From 2774bbb35fd2fce00eaf08bd3ee22c9e15ca904f Mon Sep 17 00:00:00 2001 From: slava110 Date: Sun, 15 Jun 2025 21:49:15 +0300 Subject: [PATCH 01/51] Fixed Gradle problems and turned off Fabric temporarily. Will come back later! --- Common/build.gradle | 8 +++++++- Neoforge/build.gradle | 14 +++++++++++++- Neoforge/gradle.properties | 4 ++-- build.gradle | 17 ++++++++++------- gradle.properties | 3 ++- gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle | 2 +- 7 files changed, 36 insertions(+), 14 deletions(-) diff --git a/Common/build.gradle b/Common/build.gradle index 91a09e78b5..4143c84a2b 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -1,5 +1,5 @@ architectury { - common(["fabric", "neoforge"]) + common([/*"fabric", */"neoforge"]) } pkSubproj { @@ -9,6 +9,7 @@ pkSubproj { repositories { mavenCentral() + mavenLocal() maven { url 'https://maven.blamejared.com' } @@ -32,6 +33,11 @@ repositories { dependencies { // === MANDATORY DEPS === + // We depend on Fabric Loader here to use the Fabric @Environment annotations, + // which get remapped to the correct annotations on each platform. + // Do NOT use other classes from Fabric Loader. + //modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" + compileOnly "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" // i do not know why the xplat and mod jars are in different coordinates compileOnly "vazkii.patchouli:Patchouli-xplat:1.21-$patchouliVersion-SNAPSHOT" diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index bea4ef7681..0632756cb7 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -1,3 +1,7 @@ +plugins { + id 'com.gradleup.shadow' +} + architectury { platformSetupLoomIde() neoForge() @@ -30,6 +34,7 @@ configurations { repositories { mavenCentral() + mavenLocal() // If you have mod jar dependencies in ./libs, you can declare them as a repository like so: flatDir { @@ -138,4 +143,11 @@ processResources { } } -jar.finalizedBy('reobfJar') \ No newline at end of file +shadowJar { + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' +} + +remapJar { + inputFile.set shadowJar.archiveFile +} \ No newline at end of file diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index 83205facce..e1594fa813 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -1,8 +1,8 @@ -neoforgeVersion=21.1.81 +neoforgeVersion=21.1.172 loom.platform=neoforge -kotlinForForgeVersion=5.6.0 +kotlinForForgeVersion=5.8.0 curiosVersion=5.2.0-beta.3 caelusVersion=3.1.0+1.20 diff --git a/build.gradle b/build.gradle index 2b02304af4..df494b9824 100644 --- a/build.gradle +++ b/build.gradle @@ -1,8 +1,11 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { // used for something?? - id 'dev.architectury.loom' version '1.7-SNAPSHOT' apply false + id 'dev.architectury.loom' version '1.10-SNAPSHOT' apply false // used for multi-loader stuff, NOT for the archi API id 'architectury-plugin' version '3.4-SNAPSHOT' + id 'com.gradleup.shadow' version '8.3.6' apply false id "org.jetbrains.kotlin.jvm" @@ -87,7 +90,7 @@ subprojects { // Disables Gradle's custom module metadata from being published to maven. The // metadata includes mapped dependencies which are not reasonably consumable by // other mod developers. - tasks.withType(GenerateModuleMetadata) { + tasks.withType(GenerateModuleMetadata).configureEach { enabled = false } @@ -99,7 +102,7 @@ allprojects { } gradle.projectsEvaluated { - tasks.withType(JavaCompile) { + tasks.withType(JavaCompile).configureEach { options.compilerArgs << "-Xmaxerrs" << "1000" } } @@ -109,13 +112,13 @@ allprojects { } compileKotlin { - kotlinOptions { - jvmTarget = "21" + compilerOptions { + jvmTarget = JvmTarget.JVM_21 } } compileTestKotlin { - kotlinOptions { - jvmTarget = "21" + compilerOptions { + jvmTarget = JvmTarget.JVM_21 } } diff --git a/gradle.properties b/gradle.properties index 94d51bc876..6d7a8871a4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -13,7 +13,8 @@ kotlinVersion=2.0.21 modVersion=0.12.0-devel # this is the version published to modrinth/cf i swear -paucalVersion=0.7.1-pre-23 +# haha not anymore it's from mavenLocal +paucalVersion=0.7.2 patchouliVersion=88 accessoriesVersion=1.1.0-beta.16+1.21.1 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 9355b41557..ca025c83a7 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle index b4f6d8d642..d8e8add79f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,4 +19,4 @@ pluginManagement { } rootProject.name = 'Hex Casting' -include("Common", "Fabric", "Neoforge") +include("Common", /*"Fabric",*/ "Neoforge") From e3391a87e7d9e4d41993846c431e885f65144253 Mon Sep 17 00:00:00 2001 From: slava110 Date: Sun, 15 Jun 2025 23:09:46 +0300 Subject: [PATCH 02/51] Ported to 1.21 NeoForge, some Neo-specific stuff is on common package now :c --- Common/build.gradle | 15 +- .../java/at/petrak/hexcasting/api/HexAPI.java | 59 +--- .../hexcasting/api/addldata/ADIotaHolder.java | 11 +- .../ItemDelegatingEntityIotaHolder.java | 10 +- .../FailToCastGreatSpellTrigger.java | 39 ++- .../advancements/HexAdvancementTriggers.java | 38 ++- .../api/advancements/MinMaxLongs.java | 72 ++--- .../api/advancements/OvercastTrigger.java | 77 ++--- .../api/advancements/SpendMediaTrigger.java | 61 ++-- .../hexcasting/api/block/HexBlockEntity.java | 20 +- .../block/circle/BlockAbstractImpetus.java | 3 + .../hexcasting/api/casting/ActionUtils.kt | 36 ++- .../hexcasting/api/casting/ParticleSpray.kt | 15 + .../hexcasting/api/casting/SpellList.kt | 15 + .../api/casting/castables/SpellAction.kt | 13 +- .../circles/BlockEntityAbstractImpetus.java | 19 +- .../casting/circles/CircleExecutionState.java | 27 +- .../api/casting/eval/CastingEnvironment.java | 5 +- .../api/casting/eval/ExecutionClientView.kt | 32 +- .../api/casting/eval/ResolvedPattern.kt | 46 ++- .../api/casting/eval/env/CircleCastEnv.java | 3 +- .../casting/eval/env/PlayerBasedCastEnv.java | 18 +- .../api/casting/eval/env/StaffCastEnv.java | 3 +- .../api/casting/eval/vm/CastingImage.kt | 114 +++----- .../api/casting/eval/vm/CastingVM.kt | 21 +- .../api/casting/eval/vm/ContinuationFrame.kt | 76 ++--- .../api/casting/eval/vm/FrameEvaluate.kt | 41 +-- .../api/casting/eval/vm/FrameFinishEval.kt | 17 +- .../api/casting/eval/vm/FrameForEach.kt | 61 ++-- .../api/casting/eval/vm/SpellContinuation.kt | 69 +++-- .../api/casting/iota/BooleanIota.java | 40 ++- .../api/casting/iota/ContinuationIota.java | 41 ++- .../api/casting/iota/DoubleIota.java | 35 ++- .../api/casting/iota/EntityIota.java | 148 ++++++---- .../api/casting/iota/GarbageIota.java | 39 +-- .../hexcasting/api/casting/iota/Iota.java | 45 +-- .../hexcasting/api/casting/iota/IotaType.java | 185 +++--------- .../hexcasting/api/casting/iota/ListIota.java | 90 +++--- .../hexcasting/api/casting/iota/NullIota.java | 32 +- .../api/casting/iota/PatternIota.java | 51 ++-- .../hexcasting/api/casting/iota/Vec3Iota.java | 58 ++-- .../hexcasting/api/casting/math/HexDir.kt | 8 + .../hexcasting/api/casting/math/HexPattern.kt | 34 +-- .../mishaps/MishapAlreadyBrainswept.kt | 7 +- .../casting/mishaps/MishapBadBrainsweep.kt | 7 +- .../api/casting/mishaps/MishapBadEntity.kt | 2 +- .../api/casting/mishaps/MishapDivideByZero.kt | 2 +- .../casting/mishaps/MishapEntityTooFarAway.kt | 3 +- .../mishaps/MishapEntityUnavailable.kt | 20 ++ .../api/casting/mishaps/MishapImmuneEntity.kt | 4 +- .../api/casting/mishaps/MishapInvalidIota.kt | 2 +- .../mishaps/MishapInvalidOperatorArgs.kt | 2 +- .../casting/mishaps/MishapInvalidPattern.kt | 2 +- .../mishaps/MishapLocationInWrongDimension.kt | 2 +- .../casting/mishaps/MishapNotEnoughArgs.kt | 2 +- .../api/casting/mishaps/MishapOthersName.kt | 16 +- .../api/casting/mishaps/MishapStackSize.kt | 2 +- .../mishaps/circle/MishapNoSpellCircle.kt | 12 +- .../api/client/ClientCastingStack.kt | 5 + .../hexcasting/api/item/IotaHolderItem.java | 61 ++-- .../hexcasting/api/item/VariantItem.java | 7 +- .../petrak/hexcasting/api/mod/HexConfig.java | 8 +- .../at/petrak/hexcasting/api/mod/HexTags.java | 2 + .../hexcasting/api/pigment/FrozenPigment.java | 45 ++- .../hexcasting/api/player/AltioraAbility.java | 8 + .../hexcasting/api/player/Sentinel.java | 12 + .../petrak/hexcasting/api/utils/HexUtils.kt | 18 +- .../petrak/hexcasting/api/utils/NBTHelper.kt | 110 +------ .../client/RegisterClientStuff.java | 31 +- .../client/entity/WallScrollRenderer.java | 62 ++-- .../hexcasting/client/gui/GuiSpellcasting.kt | 25 +- .../client/ktxt/ClientAccessorWrappers.kt | 4 +- .../hexcasting/client/model/AltioraLayer.java | 5 +- ...yOwnArmorModelWithBlackjackAndHookers.java | 5 +- .../client/particles/ConjureParticle.java | 14 +- .../client/render/HexAdditionalRenderers.java | 26 +- .../hexcasting/client/render/RenderLib.kt | 19 +- .../client/render/ScryingLensOverlays.java | 6 +- .../hexcasting/client/render/VCDrawHelper.kt | 79 +++-- .../render/WorldlyPatternRenderHelpers.java | 2 +- .../be/BlockEntityQuenchedAllayRenderer.java | 2 +- .../common/blocks/BlockConjured.java | 5 +- .../blocks/akashic/BlockAkashicBookshelf.java | 35 ++- .../blocks/akashic/BlockAkashicRecord.java | 7 +- .../akashic/BlockEntityAkashicBookshelf.java | 39 ++- .../blocks/circles/BlockEntitySlate.java | 16 +- .../impetuses/BlockEntityLookingImpetus.java | 12 +- .../impetuses/BlockEntityRedstoneImpetus.java | 38 ++- .../impetuses/BlockLookingImpetus.java | 6 + .../impetuses/BlockRedstoneImpetus.java | 43 ++- .../impetuses/BlockRightClickImpetus.java | 19 +- .../decoration/BlockAmethystDirectional.java | 10 +- .../blocks/decoration/BlockHexDoor.java | 2 +- .../blocks/decoration/BlockHexFenceGate.java | 2 +- .../decoration/BlockHexPressurePlate.java | 4 +- .../blocks/decoration/BlockHexTrapdoor.java | 2 +- .../blocks/decoration/BlockHexWoodButton.java | 2 +- .../blocks/entity/BlockEntityConjured.java | 10 +- .../entity/BlockEntityQuenchedAllay.java | 5 +- .../casting/actions/akashic/OpAkashicRead.kt | 2 +- .../casting/actions/akashic/OpAkashicWrite.kt | 2 +- .../common/casting/actions/lists/OpIndex.kt | 2 +- .../common/casting/actions/lists/OpUnCons.kt | 2 +- .../casting/actions/local/OpPeekLocal.kt | 5 +- .../casting/actions/local/OpPushLocal.kt | 4 +- .../actions/queryentity/OpEntityHeight.kt | 2 +- .../actions/queryentity/OpEntityLook.kt | 2 +- .../actions/queryentity/OpEntityPos.kt | 2 +- .../actions/queryentity/OpEntityVelocity.kt | 2 +- .../actions/raycast/OpBlockAxisRaycast.kt | 2 +- .../casting/actions/raycast/OpBlockRaycast.kt | 2 +- .../actions/raycast/OpEntityRaycast.kt | 2 +- .../common/casting/actions/rw/OpRead.kt | 4 +- .../common/casting/actions/rw/OpReadable.kt | 2 +- .../casting/actions/rw/OpTheCoolerRead.kt | 4 +- .../casting/actions/rw/OpTheCoolerReadable.kt | 4 +- .../casting/actions/rw/OpTheCoolerWritable.kt | 4 +- .../casting/actions/rw/OpTheCoolerWrite.kt | 4 +- .../common/casting/actions/rw/OpWrite.kt | 2 +- .../casting/actions/spells/OpAddMotion.kt | 2 +- .../common/casting/actions/spells/OpBlink.kt | 7 +- .../casting/actions/spells/OpColorize.kt | 4 +- .../casting/actions/spells/OpDestroyFluid.kt | 6 +- .../common/casting/actions/spells/OpIgnite.kt | 19 +- .../actions/spells/OpMakePackagedSpell.kt | 2 +- .../casting/actions/spells/OpPlaceBlock.kt | 24 +- .../casting/actions/spells/OpPotionEffect.kt | 11 +- .../OpTheOnlyReasonAnyoneDownloadedPsi.kt | 14 +- .../actions/spells/great/OpBrainsweep.kt | 9 +- .../actions/spells/great/OpTeleport.kt | 11 +- .../spells/sentinel/OpGetSentinelPos.kt | 2 +- .../spells/sentinel/OpGetSentinelWayfind.kt | 2 +- .../arithmetic/operator/list/OperatorIndex.kt | 2 +- .../operator/list/OperatorUnCons.kt | 2 +- .../operator/list/OperatorUnappend.kt | 2 +- .../command/ListPerWorldPatternsCommand.java | 35 +-- .../common/command/PatternResKeyArgument.java | 83 ++++++ .../common/command/PatternResLocArgument.java | 1 + .../common/entities/EntityWallScroll.java | 51 ++-- .../hexcasting/common/impl/HexAPIImpl.java | 54 +--- .../common/items/HexBaubleItem.java | 3 +- .../common/items/ItemJewelerHammer.java | 6 +- .../hexcasting/common/items/ItemLens.java | 40 +-- .../common/items/ItemLoreFragment.java | 5 +- .../hexcasting/common/items/ItemStaff.java | 16 +- .../common/items/armor/ItemRobes.java | 3 +- .../items/magic/DebugUnlockerHolder.java | 5 +- .../common/items/magic/ItemAncientCypher.java | 30 +- .../items/magic/ItemCreativeUnlocker.java | 71 ++--- .../common/items/magic/ItemMediaHolder.java | 37 ++- .../common/items/magic/ItemPackagedHex.java | 41 +-- .../common/items/pigment/ItemUUIDPigment.java | 3 +- .../common/items/storage/ItemAbacus.java | 19 +- .../common/items/storage/ItemFocus.java | 29 +- .../common/items/storage/ItemScroll.java | 87 ++---- .../common/items/storage/ItemSlate.java | 60 ++-- .../common/items/storage/ItemSpellbook.java | 117 ++++---- .../common/items/storage/ItemThoughtKnot.java | 14 +- .../hexcasting/common/lib/HexAttributes.java | 2 - .../common/lib/HexBlockEntities.java | 2 +- .../hexcasting/common/lib/HexBlocks.java | 28 +- .../common/lib/HexConfiguredFeatures.java | 2 +- .../common/lib/HexCreativeTabs.java | 3 +- .../hexcasting/common/lib/HexDamageTypes.java | 3 +- .../common/lib/HexDataComponents.java | 165 +++++++++++ .../hexcasting/common/lib/HexItems.java | 58 +++- .../common/lib/HexLootFunctions.java | 22 +- .../hexcasting/common/lib/HexMobEffects.java | 10 +- .../hexcasting/common/lib/HexPotions.java | 44 ++- .../hexcasting/common/lib/HexRegistries.java | 4 + .../hexcasting/common/lib/hex/HexActions.java | 2 +- .../common/lib/hex/HexIotaTypes.java | 15 +- .../loot/AddHexToAncientCypherFunc.java | 57 ++-- .../loot/AddPerWorldPatternToScrollFunc.java | 37 +-- .../common/loot/AmethystReducerFunc.java | 42 ++- .../common/loot/HexLootHandler.java | 67 +++-- .../common/misc/AkashicTreeGrower.java | 57 +++- .../hexcasting/common/msgs/MsgBeepS2C.java | 67 ++--- .../hexcasting/common/msgs/MsgBlinkS2C.java | 33 +-- .../common/msgs/MsgCastParticleS2C.java | 108 +++---- .../msgs/MsgClearSpiralPatternsS2C.java | 46 ++- .../common/msgs/MsgNewSpellPatternC2S.java | 51 ++-- .../common/msgs/MsgNewSpellPatternS2C.java | 66 ++--- .../common/msgs/MsgNewSpiralPatternsS2C.java | 56 ++-- .../common/msgs/MsgNewWallScrollS2C.java | 62 ++-- .../common/msgs/MsgOpenSpellGuiS2C.java | 70 ++--- .../msgs/MsgRecalcWallScrollDisplayS2C.java | 49 ++-- .../common/msgs/MsgShiftScrollC2S.java | 62 ++-- .../particles/ConjureParticleOptions.java | 48 ++- .../common/recipe/BrainsweepRecipe.java | 67 +++-- .../common/recipe/SealSpellbookRecipe.java | 19 +- .../common/recipe/SealThingsRecipe.java | 31 +- .../recipe/ingredient/StateIngredient.java | 7 +- .../ingredient/StateIngredientBlock.java | 49 ++-- .../ingredient/StateIngredientBlockState.java | 49 ++-- .../ingredient/StateIngredientBlocks.java | 54 ++-- .../ingredient/StateIngredientHelper.java | 167 ----------- .../recipe/ingredient/StateIngredientTag.java | 47 ++- .../StateIngredientTagExcluding.java | 57 ++-- .../ingredient/StateIngredientType.java | 12 + .../recipe/ingredient/StateIngredients.java | 95 ++++++ .../brainsweep/BrainsweepeeIngredient.java | 47 +-- .../BrainsweepeeIngredientType.java | 12 + .../brainsweep/BrainsweepeeIngredients.java | 107 +++++++ .../brainsweep/EntityTagIngredient.java | 81 +++--- .../brainsweep/EntityTypeIngredient.java | 77 +++-- .../brainsweep/VillagerIngredient.java | 141 ++++----- .../hexcasting/datagen/HexAdvancements.java | 81 +++--- .../hexcasting/datagen/HexLootTables.java | 61 ++-- .../datagen/recipe/HexplatRecipes.java | 245 +++++++++++++--- .../builders/BrainsweepRecipeBuilder.java | 76 ++--- .../builders/CreateCrushingRecipeBuilder.java | 66 +---- .../FarmersDelightCuttingRecipeBuilder.java | 62 +--- .../recipe/builders/ItemProcessingOutput.java | 28 -- .../datagen/tag/HexActionTagProvider.java | 2 +- .../datagen/tag/HexBlockTagProvider.java | 17 +- .../datagen/tag/HexItemTagProvider.java | 11 +- .../interop/inline/InlinePatternData.java | 5 +- .../patchouli/AbstractPatternComponent.java | 3 +- .../patchouli/BrainsweepProcessor.java | 22 +- .../patchouli/CustomComponentTooltip.java | 6 +- .../patchouli/LookupPatternComponent.java | 5 +- .../patchouli/ManualPatternComponent.java | 9 +- .../patchouli/MultiCraftingProcessor.java | 19 +- .../interop/patchouli/PatchouliUtils.java | 26 +- .../interop/patchouli/PatternProcessor.java | 6 +- .../hexcasting/interop/pehkui/OpGetScale.kt | 2 +- .../hexcasting/interop/pehkui/OpSetScale.kt | 2 +- .../mixin/MixinWanderingTrader.java | 7 +- .../mixin/accessor/AccessorDamageSource.java | 17 -- .../mixin/accessor/AccessorLootTable.java | 5 +- .../mixin/accessor/AccessorPotionBrewing.java | 14 - .../accessor/CriteriaTriggersAccessor.java | 14 - .../accessor/client/AccessorMouseHandler.java | 8 +- .../server/ScrungledPatternsSave.java | 13 +- .../xplat/IClientXplatAbstractions.java | 3 +- .../hexcasting/xplat/IXplatAbstractions.java | 20 +- .../main/resources/architectury.common.json | 3 + .../src/main/resources/hexplat.accesswidener | 18 +- Neoforge/build.gradle | 16 +- .../forge/ForgeHexClientInitializer.java | 34 +-- .../hexcasting/forge/ForgeHexConfig.java | 61 ++-- .../hexcasting/forge/ForgeHexInitializer.java | 163 ++++++----- .../hexcasting/forge/cap/CapSyncers.java | 4 +- .../forge/cap/ForgeCapabilityHandler.java | 275 ++++++------------ .../forge/cap/ForgeImpetusCapability.java | 2 +- .../hexcasting/forge/cap/HexCapabilities.java | 35 ++- .../cap/adimpl/CapClientCastingStack.java | 21 +- .../forge/cap/adimpl/CapEntityIotaHolder.java | 10 +- .../forge/cap/adimpl/CapItemIotaHolder.java | 13 +- .../forge/cap/adimpl/CapStaticIotaHolder.java | 9 +- .../datagen/ForgeHexConditionsBuilder.java | 25 +- .../forge/datagen/ForgeHexDataGenerators.java | 39 +-- .../forge/datagen/ForgeHexLootModGen.java | 13 +- .../forge/datagen/TagsProviderEFHSetter.java | 2 +- .../xplat/HexBlockStatesAndModels.java | 15 +- .../forge/datagen/xplat/HexItemModels.java | 70 ++--- .../interop/curios/CuriosApiInterop.java | 43 +-- .../forge/interop/curios/CuriosRenderers.java | 5 +- .../interop/curios/LensCurioRenderer.java | 2 +- .../interop/jei/BrainsweepRecipeCategory.java | 24 +- .../interop/jei/EdifyRecipeCategory.java | 19 +- .../forge/interop/jei/HexJEIPlugin.java | 3 +- .../interop/jei/PhialRecipeCategory.java | 20 +- .../lib/ForgeHexArgumentTypeRegistry.java | 20 +- .../forge/lib/ForgeHexIngredientTypes.java | 22 ++ .../forge/lib/ForgeHexLootMods.java | 22 +- .../forge/loot/ForgeHexAmethystLootMod.java | 18 +- .../forge/loot/ForgeHexCypherLootMod.java | 9 +- .../forge/loot/ForgeHexLoreLootMod.java | 9 +- .../forge/loot/ForgeHexScrollLootMod.java | 11 +- .../mixin/ForgeAccessorBuiltInRegistries.java | 25 -- .../forge/mixin/ForgeMixinTagsProvider.java | 8 +- .../forge/network/ForgePacketHandler.java | 101 +++---- .../forge/network/MsgAltioraUpdateAck.java | 55 ++-- .../forge/network/MsgBrainsweepAck.java | 46 ++- .../forge/network/MsgPigmentUpdateAck.java | 41 ++- .../network/MsgSentinelStatusUpdateAck.java | 67 ++--- .../recipe/ForgeModConditionalIngredient.java | 105 +++---- .../forge/recipe/ForgeUnsealedIngredient.java | 70 ++--- .../forge/xplat/ForgeClientXplatImpl.java | 12 +- .../forge/xplat/ForgeXplatImpl.java | 248 ++++++++-------- gradle.properties | 2 + 283 files changed, 4388 insertions(+), 4483 deletions(-) create mode 100644 Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientHelper.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredientType.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java delete mode 100644 Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/ItemProcessingOutput.java delete mode 100644 Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorDamageSource.java delete mode 100644 Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorPotionBrewing.java delete mode 100644 Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java create mode 100644 Common/src/main/resources/architectury.common.json create mode 100644 Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java delete mode 100644 Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeAccessorBuiltInRegistries.java diff --git a/Common/build.gradle b/Common/build.gradle index 4143c84a2b..2137b32843 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -2,6 +2,10 @@ architectury { common([/*"fabric", */"neoforge"]) } +loom { + accessWidenerPath = file("src/main/resources/hexplat.accesswidener") +} + pkSubproj { platform = "common" pkPublish = false @@ -36,17 +40,16 @@ dependencies { // We depend on Fabric Loader here to use the Fabric @Environment annotations, // which get remapped to the correct annotations on each platform. // Do NOT use other classes from Fabric Loader. - //modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" + modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" - compileOnly "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" + modCompileOnly "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" // i do not know why the xplat and mod jars are in different coordinates - compileOnly "vazkii.patchouli:Patchouli-xplat:1.21-$patchouliVersion-SNAPSHOT" - // inline isn't out for 1.21 yet shaking my sm my shaking smh head -// compileOnly "com.samsthenerd.inline:inline-forge:$minecraftVersion-$inlineVersion" + modCompileOnly "vazkii.patchouli:Patchouli-xplat:1.21-$patchouliVersion-SNAPSHOT" + modCompileOnly "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" // === OPTIONAL DEPS === modCompileOnly "dev.emi:emi-xplat-intermediary:${emiVersion}:api" - compileOnly "io.wispforest:accessories-common:$accessoriesVersion" + modCompileOnly "io.wispforest:accessories-common:$accessoriesVersion" // === OTHER STUFF === compileOnly "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" diff --git a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java index 8ddde5669b..37a1f59371 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java @@ -29,6 +29,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Collections; import java.util.function.Consumer; import java.util.function.Supplier; @@ -165,49 +166,15 @@ default FrozenPigment getColorizer(Player player) { return FrozenPigment.DEFAULT.get(); } - ArmorMaterial DUMMY_ARMOR_MATERIAL = new ArmorMaterial() { - @Override - public int getDurabilityForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getDefenseForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getEnchantmentValue() { - return 0; - } - - @NotNull - @Override - public SoundEvent getEquipSound() { - return SoundEvents.ARMOR_EQUIP_LEATHER; - } - - @NotNull - @Override - public Ingredient getRepairIngredient() { - return Ingredient.EMPTY; - } - - @Override - public String getName() { - return "missingno"; - } - - @Override - public float getToughness() { - return 0; - } - - @Override - public float getKnockbackResistance() { - return 0; - } - }; + ArmorMaterial DUMMY_ARMOR_MATERIAL = new ArmorMaterial( + Collections.emptyMap(), + 0, + SoundEvents.ARMOR_EQUIP_LEATHER, + () -> Ingredient.EMPTY, + Collections.emptyList(), + 0, + 0 + ); default ArmorMaterial robesMaterial() { return DUMMY_ARMOR_MATERIAL; @@ -217,10 +184,6 @@ default ArmorMaterial robesMaterial() { * Location in the userdata of the ravenmind */ String RAVENMIND_USERDATA = modLoc("ravenmind").toString(); - /** - * Location in the userdata of the number of ops executed - */ - String OP_COUNT_USERDATA = modLoc("op_count").toString(); String MARKED_MOVED_USERDATA = modLoc("impulsed").toString(); @@ -229,6 +192,6 @@ static HexAPI instance() { } static ResourceLocation modLoc(String s) { - return new ResourceLocation(MOD_ID, s); + return ResourceLocation.fromNamespaceAndPath(MOD_ID, s); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java index 7b8fcc1c95..0ab8836c9f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java @@ -7,18 +7,9 @@ import org.jetbrains.annotations.Nullable; public interface ADIotaHolder { - @Nullable - CompoundTag readIotaTag(); @Nullable - default Iota readIota(ServerLevel world) { - var tag = readIotaTag(); - if (tag != null) { - return IotaType.deserialize(tag, world); - } else { - return null; - } - } + Iota readIota(); @Nullable default Iota emptyIota() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java index 5af67a99ab..8bad581fcb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java @@ -23,12 +23,6 @@ public ItemDelegatingEntityIotaHolder(Supplier stackSupplier, Consume this.save = save; } - @Override - public @Nullable CompoundTag readIotaTag() { - var delegate = IXplatAbstractions.INSTANCE.findDataHolder(this.stackSupplier.get()); - return delegate == null ? null : delegate.readIotaTag(); - } - @Override public boolean writeable() { var delegate = IXplatAbstractions.INSTANCE.findDataHolder(this.stackSupplier.get()); @@ -47,9 +41,9 @@ public boolean writeIota(@Nullable Iota datum, boolean simulate) { } @Override - public @Nullable Iota readIota(ServerLevel world) { + public @Nullable Iota readIota() { var delegate = IXplatAbstractions.INSTANCE.findDataHolder(this.stackSupplier.get()); - return delegate == null ? null : delegate.readIota(world); + return delegate == null ? null : delegate.readIota(); } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java index fe85fec5b3..f58dfab3a9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java @@ -1,39 +1,38 @@ package at.petrak.hexcasting.api.advancements; -import com.google.gson.JsonObject; -import net.minecraft.advancements.critereon.*; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.advancements.critereon.ContextAwarePredicate; +import net.minecraft.advancements.critereon.EntityPredicate; +import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; -public class FailToCastGreatSpellTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "fail_to_cast_great_spell"); +import java.util.Optional; - @Override - public ResourceLocation getId() { - return ID; - } +public class FailToCastGreatSpellTrigger extends SimpleCriterionTrigger { + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "fail_to_cast_great_spell"); @Override - protected Instance createInstance(JsonObject json, ContextAwarePredicate predicate, DeserializationContext context) { - return new Instance(predicate); + public Codec codec() { + return Instance.CODEC; } public void trigger(ServerPlayer player) { super.trigger(player, e -> true); } - public static class Instance extends AbstractCriterionTriggerInstance { - public Instance(ContextAwarePredicate predicate) { - super(ID, predicate); - } + public static record Instance(Optional player) implements SimpleCriterionTrigger.SimpleInstance { + public static final Codec CODEC = RecordCodecBuilder.create( + p_337348_ -> p_337348_.group( + EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(FailToCastGreatSpellTrigger.Instance::player) + ) + .apply(p_337348_, FailToCastGreatSpellTrigger.Instance::new) + ); @Override - public ResourceLocation getCriterion() { - return ID; - } - - public JsonObject serializeToJson(SerializationContext pConditions) { - return new JsonObject(); + public Optional player() { + return player; } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/HexAdvancementTriggers.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/HexAdvancementTriggers.java index 16af02ab39..36d051ab96 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/HexAdvancementTriggers.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/HexAdvancementTriggers.java @@ -1,15 +1,35 @@ package at.petrak.hexcasting.api.advancements; -import at.petrak.hexcasting.mixin.accessor.CriteriaTriggersAccessor; +import net.minecraft.advancements.CriterionTrigger; +import net.minecraft.resources.ResourceLocation; + +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.function.BiConsumer; + +import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexAdvancementTriggers { - public static final OvercastTrigger OVERCAST_TRIGGER = new OvercastTrigger(); - public static final SpendMediaTrigger SPEND_MEDIA_TRIGGER = new SpendMediaTrigger(); - public static final FailToCastGreatSpellTrigger FAIL_GREAT_SPELL_TRIGGER = new FailToCastGreatSpellTrigger(); - - public static void registerTriggers() { - CriteriaTriggersAccessor.hex$register(OVERCAST_TRIGGER); - CriteriaTriggersAccessor.hex$register(SPEND_MEDIA_TRIGGER); - CriteriaTriggersAccessor.hex$register(FAIL_GREAT_SPELL_TRIGGER); + private static final Map> TRIGGERS = new LinkedHashMap<>(); + + public static final OvercastTrigger OVERCAST_TRIGGER = register("overcast", new OvercastTrigger()); + public static final SpendMediaTrigger SPEND_MEDIA_TRIGGER = register("spend_media", new SpendMediaTrigger()); + public static final FailToCastGreatSpellTrigger FAIL_GREAT_SPELL_TRIGGER = register("fail_to_cast_great_spell", new FailToCastGreatSpellTrigger()); + + public static void registerTriggers(BiConsumer, ResourceLocation> r) { + for (var e : TRIGGERS.entrySet()) { + r.accept(e.getValue(), e.getKey()); + } + } + + private static > T register( + String id, + T lift + ) { + var old = TRIGGERS.put(modLoc(id), lift); + if (old != null) { + throw new IllegalArgumentException("Typo? Duplicate id " + id); + } + return lift; } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java index 0be502c86e..e6ba6a91a1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java @@ -1,85 +1,65 @@ package at.petrak.hexcasting.api.advancements; -import com.google.gson.JsonElement; import com.mojang.brigadier.StringReader; -import com.mojang.brigadier.exceptions.BuiltInExceptionProvider; import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.serialization.Codec; import net.minecraft.advancements.critereon.MinMaxBounds; -import net.minecraft.util.GsonHelper; -import javax.annotation.Nullable; -import java.util.Objects; +import java.util.Optional; import java.util.function.Function; -public class MinMaxLongs extends MinMaxBounds { - public static final MinMaxLongs ANY = new MinMaxLongs(null, null); - @Nullable - private final Long minSq; - @Nullable - private final Long maxSq; +public record MinMaxLongs(Optional min, Optional max, Optional minSq, Optional maxSq) implements MinMaxBounds { + public static final Codec CODEC = MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); - private static MinMaxLongs create(StringReader reader, @Nullable Long min, @Nullable Long max) throws CommandSyntaxException { - if (min != null && max != null && min > max) { + public static final MinMaxLongs ANY = new MinMaxLongs(Optional.empty(), Optional.empty()); + + private MinMaxLongs(Optional min, Optional max) { + this(min, max, squareOpt(min), squareOpt(max)); + } + + private static MinMaxLongs create(StringReader reader, Optional min, Optional max) throws CommandSyntaxException { + if (min.isPresent() && max.isPresent() && min.get() > max.get()) { throw ERROR_SWAPPED.createWithContext(reader); } else { return new MinMaxLongs(min, max); } } - @Nullable - private static Long squareOpt(@Nullable Long l) { - return l == null ? null : l * l; - } - - private MinMaxLongs(@Nullable Long min, @Nullable Long max) { - super(min, max); - this.minSq = squareOpt(min); - this.maxSq = squareOpt(max); + private static Optional squareOpt(Optional value) { + return value.map(p_297909_ -> p_297909_ * p_297909_); } public static MinMaxLongs exactly(long l) { - return new MinMaxLongs(l, l); + return new MinMaxLongs(Optional.of(l), Optional.of(l)); } public static MinMaxLongs between(long min, long max) { - return new MinMaxLongs(min, max); + return new MinMaxLongs(Optional.of(min), Optional.of(max)); } public static MinMaxLongs atLeast(long min) { - return new MinMaxLongs(min, null); + return new MinMaxLongs(Optional.of(min), Optional.empty()); } public static MinMaxLongs atMost(long max) { - return new MinMaxLongs(null, max); + return new MinMaxLongs(Optional.empty(), Optional.of(max)); } - public boolean matches(long l) { - if (this.min != null && this.min > l) { - return false; - } else { - return this.max == null || this.max >= l; - } - } - - public boolean matchesSqr(long l) { - if (this.minSq != null && this.minSq > l) { - return false; - } else { - return this.maxSq == null || this.maxSq >= l; - } + public boolean matches(long value) { + return (this.min.isEmpty() || this.min.get() <= value) && (this.max.isEmpty() || this.max.get() >= value); } - public static MinMaxLongs fromJson(@Nullable JsonElement json) { - return fromJson(json, ANY, GsonHelper::convertToLong, MinMaxLongs::new); + public boolean matchesSqr(long value) { + return (this.minSq.isEmpty() || this.minSq.get() <= value) && (this.maxSq.isEmpty() || this.maxSq.get() >= value); } public static MinMaxLongs fromReader(StringReader reader) throws CommandSyntaxException { return fromReader(reader, (l) -> l); } - public static MinMaxLongs fromReader(StringReader reader, Function map) throws CommandSyntaxException { - BuiltInExceptionProvider builtInExceptions = CommandSyntaxException.BUILT_IN_EXCEPTIONS; - Objects.requireNonNull(builtInExceptions); - return fromReader(reader, MinMaxLongs::create, Long::parseLong, builtInExceptions::readerInvalidInt, map); + public static MinMaxLongs fromReader(StringReader reader, Function formatter) throws CommandSyntaxException { + return MinMaxBounds.fromReader( + reader, MinMaxLongs::create, Long::parseLong, CommandSyntaxException.BUILT_IN_EXCEPTIONS::readerInvalidLong, formatter + ); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java index b1661e869e..d98f9ca773 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java @@ -2,34 +2,23 @@ import at.petrak.hexcasting.api.mod.HexConfig; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.advancements.critereon.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; +import java.util.Optional; + // https://github.com/TelepathicGrunt/Bumblezone/blob/latest-released/src/main/java/com/telepathicgrunt/the_bumblezone/advancements/CleanupStickyHoneyResidueTrigger.java // https://github.com/VazkiiMods/Botania/blob/b8706e2e0bba20f67f1e103559a4ce39d63d48f9/src/main/java/vazkii/botania/common/advancements/CorporeaRequestTrigger.java public class OvercastTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "overcast"); - - private static final String TAG_MEDIA_GENERATED = "media_generated"; - private static final String TAG_HEALTH_USED = "health_used"; - // HEY KIDS DID YOYU KNOW THERE'S NOT A CRITERIA FOR HOW MUCH ***HEALTH*** AN ENTITY HAS - private static final String TAG_HEALTH_LEFT = - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion"; - - @Override - public ResourceLocation getId() { - return ID; - } + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "overcast"); @Override - protected Instance createInstance(JsonObject json, ContextAwarePredicate predicate, - DeserializationContext pContext) { - return new Instance(predicate, - MinMaxBounds.Ints.fromJson(json.get(TAG_MEDIA_GENERATED)), - MinMaxBounds.Doubles.fromJson(json.get(TAG_HEALTH_USED)), - MinMaxBounds.Doubles.fromJson(json.get(TAG_HEALTH_LEFT))); + public Codec codec() { + return Instance.CODEC; } public void trigger(ServerPlayer player, int mediaGenerated) { @@ -40,41 +29,25 @@ public void trigger(ServerPlayer player, int mediaGenerated) { }); } - public static class Instance extends AbstractCriterionTriggerInstance { - protected final MinMaxBounds.Ints mediaGenerated; - // This is the *proporttion* of the health bar. - protected final MinMaxBounds.Doubles healthUsed; - // DID YOU KNOW THERES ONE TO CHECK THE WORLD TIME, BUT NOT THE HEALTH!? - protected final MinMaxBounds.Doubles healthLeft; - - public Instance(ContextAwarePredicate predicate, MinMaxBounds.Ints mediaGenerated, - MinMaxBounds.Doubles healthUsed, MinMaxBounds.Doubles healthLeft) { - super(OvercastTrigger.ID, predicate); - this.mediaGenerated = mediaGenerated; - this.healthUsed = healthUsed; + public static record Instance( + Optional player, + MinMaxBounds.Ints mediaGenerated, + // This is the *proporttion* of the health bar. + MinMaxBounds.Doubles healthUsed, + // DID YOU KNOW THERES ONE TO CHECK THE WORLD TIME, BUT NOT THE HEALTH!? + MinMaxBounds.Doubles healthLeft // DID YOU KNOW THERE'S ONE TO CHECK THE FUCKING C A T T Y P E BUT NOT THE HEALTH - this.healthLeft = healthLeft; - } - - @Override - public ResourceLocation getCriterion() { - return ID; - } - - @Override - public JsonObject serializeToJson(SerializationContext ctx) { - JsonObject json = super.serializeToJson(ctx); - if (!this.mediaGenerated.isAny()) { - json.add(TAG_MEDIA_GENERATED, this.mediaGenerated.serializeToJson()); - } - if (!this.healthUsed.isAny()) { - json.add(TAG_HEALTH_USED, this.healthUsed.serializeToJson()); - } - if (!this.healthLeft.isAny()) { - json.add(TAG_HEALTH_LEFT, this.healthLeft.serializeToJson()); - } - return json; - } + ) implements SimpleCriterionTrigger.SimpleInstance { + public static final Codec CODEC = RecordCodecBuilder.create( + inst -> inst.group( + EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(Instance::player), + MinMaxBounds.Ints.CODEC.fieldOf("media_generated").forGetter(Instance::mediaGenerated), + MinMaxBounds.Doubles.CODEC.fieldOf("health_used").forGetter(Instance::healthUsed), + // HEY KIDS DID YOYU KNOW THERE'S NOT A CRITERIA FOR HOW MUCH ***HEALTH*** AN ENTITY HAS + MinMaxBounds.Doubles.CODEC.fieldOf("mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion").forGetter(Instance::healthLeft) + ) + .apply(inst, Instance::new) + ); private boolean test(int mediaGeneratedIn, double healthUsedIn, float healthLeftIn) { return this.mediaGenerated.matches(mediaGeneratedIn) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java index d610807f59..4d56e48828 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java @@ -1,60 +1,39 @@ package at.petrak.hexcasting.api.advancements; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.advancements.critereon.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; -public class SpendMediaTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "spend_media"); - - private static final String TAG_MEDIA_SPENT = "media_spent"; - private static final String TAG_MEDIA_WASTED = "media_wasted"; +import java.util.Optional; - @Override - public ResourceLocation getId() { - return ID; - } +public class SpendMediaTrigger extends SimpleCriterionTrigger { + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "spend_media"); @Override - protected Instance createInstance(JsonObject json, ContextAwarePredicate predicate, - DeserializationContext context) { - return new Instance(predicate, - MinMaxLongs.fromJson(json.get(TAG_MEDIA_SPENT)), - MinMaxLongs.fromJson(json.get(TAG_MEDIA_WASTED))); + public Codec codec() { + return Instance.CODEC; } public void trigger(ServerPlayer player, long mediaSpent, long mediaWasted) { super.trigger(player, inst -> inst.test(mediaSpent, mediaWasted)); } - public static class Instance extends AbstractCriterionTriggerInstance { - protected final MinMaxLongs mediaSpent; - protected final MinMaxLongs mediaWasted; - - public Instance(ContextAwarePredicate predicate, MinMaxLongs mediaSpent, - MinMaxLongs mediaWasted) { - super(SpendMediaTrigger.ID, predicate); - this.mediaSpent = mediaSpent; - this.mediaWasted = mediaWasted; - } - - @Override - public ResourceLocation getCriterion() { - return ID; - } - - @Override - public JsonObject serializeToJson(SerializationContext ctx) { - JsonObject json = super.serializeToJson(ctx); - if (!this.mediaSpent.isAny()) { - json.add(TAG_MEDIA_SPENT, this.mediaSpent.serializeToJson()); - } - if (!this.mediaWasted.isAny()) { - json.add(TAG_MEDIA_WASTED, this.mediaWasted.serializeToJson()); - } - return json; - } + public static record Instance( + Optional player, + MinMaxLongs mediaSpent, + MinMaxLongs mediaWasted + ) implements SimpleCriterionTrigger.SimpleInstance { + public static final Codec CODEC = RecordCodecBuilder.create( + inst -> inst.group( + EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(Instance::player), + MinMaxLongs.CODEC.fieldOf("media_generated").forGetter(Instance::mediaSpent), + MinMaxLongs.CODEC.fieldOf("health_used").forGetter(Instance::mediaWasted) + ) + .apply(inst, Instance::new) + ); private boolean test(long mediaSpentIn, long mediaWastedIn) { return this.mediaSpent.matches(mediaSpentIn) && this.mediaWasted.matches(mediaWastedIn); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java b/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java index e531ddb12d..b7eb267b7c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.api.block; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -14,25 +15,26 @@ public HexBlockEntity(BlockEntityType pType, BlockPos pWorldPosition, BlockSt super(pType, pWorldPosition, pBlockState); } - protected abstract void saveModData(CompoundTag tag); + protected abstract void saveModData(CompoundTag tag, HolderLookup.Provider registries); - protected abstract void loadModData(CompoundTag tag); + protected abstract void loadModData(CompoundTag tag, HolderLookup.Provider registries); @Override - protected void saveAdditional(CompoundTag pTag) { - this.saveModData(pTag); + protected void saveAdditional(CompoundTag pTag, HolderLookup.Provider registries) { + super.saveAdditional(pTag, registries); + this.saveModData(pTag, registries); } @Override - public void load(CompoundTag pTag) { - super.load(pTag); - this.loadModData(pTag); + public void loadAdditional(CompoundTag pTag, HolderLookup.Provider registries) { + super.loadAdditional(pTag, registries); + this.loadModData(pTag, registries); } @Override - public CompoundTag getUpdateTag() { + public CompoundTag getUpdateTag(HolderLookup.Provider registries) { CompoundTag tag = new CompoundTag(); - this.saveModData(tag); + this.saveModData(tag, registries); return tag; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java index d5197fce68..1dbe8052d6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java @@ -13,6 +13,7 @@ import net.minecraft.world.level.block.EntityBlock; import net.minecraft.world.level.block.Mirror; import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; @@ -30,6 +31,8 @@ public BlockAbstractImpetus(Properties p_49795_) { this.stateDefinition.any().setValue(ENERGIZED, false).setValue(FACING, Direction.NORTH)); } + public abstract BlockEntityType getBlockEntityType(); + @Override public ControlFlow acceptControlFlow(CastingImage imageIn, CircleCastEnv env, Direction enterDir, BlockPos pos, BlockState bs, ServerLevel world) { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt index c6dda37c9a..fc8efbb916 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt @@ -4,11 +4,13 @@ package at.petrak.hexcasting.api.casting import at.petrak.hexcasting.api.casting.iota.* import at.petrak.hexcasting.api.casting.math.HexPattern +import at.petrak.hexcasting.api.casting.mishaps.MishapEntityUnavailable import at.petrak.hexcasting.api.casting.mishaps.MishapInvalidIota import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.api.utils.asTranslatedComponent import com.mojang.datafixers.util.Either import net.minecraft.core.BlockPos +import net.minecraft.server.level.ServerLevel import net.minecraft.server.level.ServerPlayer import net.minecraft.world.entity.Entity import net.minecraft.world.entity.LivingEntity @@ -32,10 +34,28 @@ fun List.getDouble(idx: Int, argc: Int = 0): Double { } } -fun List.getEntity(idx: Int, argc: Int = 0): Entity { +fun List.getEntity(level: ServerLevel, idx: Int, argc: Int = 0): Entity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - return x.entity + return x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + } else { + throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") + } +} + +fun List.getOrFindEntity(level: ServerLevel, idx: Int, argc: Int = 0): Entity? { + val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } + if (x is EntityIota) { + return x.getOrFindEntity(level) + } else { + throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") + } +} + +fun List.getCachedEntity(idx: Int, argc: Int = 0): Entity? { + val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } + if (x is EntityIota) { + return x.cachedEntity; } else { throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") } @@ -82,7 +102,7 @@ fun List.getBool(idx: Int, argc: Int = 0): Boolean { fun List.getItemEntity(idx: Int, argc: Int = 0): ItemEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.entity + val e = TODO("replace entity references") if (e is ItemEntity) return e } @@ -92,7 +112,7 @@ fun List.getItemEntity(idx: Int, argc: Int = 0): ItemEntity { fun List.getPlayer(idx: Int, argc: Int = 0): ServerPlayer { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.entity + val e = TODO("replace entity references") if (e is ServerPlayer) return e } @@ -102,7 +122,7 @@ fun List.getPlayer(idx: Int, argc: Int = 0): ServerPlayer { fun List.getMob(idx: Int, argc: Int = 0): Mob { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.entity + val e = TODO("replace entity references") if (e is Mob) return e } @@ -112,7 +132,7 @@ fun List.getMob(idx: Int, argc: Int = 0): Mob { fun List.getLivingEntityButNotArmorStand(idx: Int, argc: Int = 0): LivingEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.entity + val e = TODO("replace entity references") if (e is LivingEntity && e !is ArmorStand) return e } @@ -297,7 +317,7 @@ fun evaluatable(datum: Iota, reverseIdx: Int): Either = ) } -fun Iota?.orNull() = this ?: NullIota() +fun Iota?.orNull() = this ?: NullIota.INSTANCE // TODO do we make this work on lists // there should probably be some way to abstract function application over lists, vecs, and numbers, @@ -319,5 +339,5 @@ inline val BlockPos.asActionResult get() = listOf(Vec3Iota(Vec3.atCenterOf(this) inline val Vector3f.asActionResult get() = listOf(Vec3Iota(Vec3(this))) inline val Vec3.asActionResult get() = listOf(Vec3Iota(this)) -inline val Entity?.asActionResult get() = listOf(if (this == null) NullIota() else EntityIota(this)) +inline val Entity?.asActionResult get() = listOf(if (this == null) NullIota.INSTANCE else EntityIota(this)) inline val HexPattern.asActionResult get() = listOf(PatternIota(this)) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt index 88129e6bf8..966e6abe18 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt @@ -3,6 +3,11 @@ package at.petrak.hexcasting.api.casting import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.common.msgs.MsgCastParticleS2C import at.petrak.hexcasting.xplat.IXplatAbstractions +import at.petrak.paucal.api.PaucalCodecs +import io.netty.buffer.ByteBuf +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel import net.minecraft.world.phys.Vec3 @@ -12,6 +17,16 @@ import net.minecraft.world.phys.Vec3 */ data class ParticleSpray(val pos: Vec3, val vel: Vec3, val fuzziness: Double, val spread: Double, val count: Int = 20) { companion object { + @JvmStatic + val STREAM_CODEC: StreamCodec = StreamCodec.composite( + PaucalCodecs.VEC3, ParticleSpray::pos, + PaucalCodecs.VEC3, ParticleSpray::vel, + ByteBufCodecs.DOUBLE, ParticleSpray::fuzziness, + ByteBufCodecs.DOUBLE, ParticleSpray::spread, + ByteBufCodecs.VAR_INT, ParticleSpray::count, + ::ParticleSpray + ) + @JvmStatic fun burst(pos: Vec3, size: Double, count: Int = 20): ParticleSpray { return ParticleSpray(pos, Vec3(size, 0.0, 0.0), 0.0, 3.14, count) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/SpellList.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/SpellList.kt index 2e76c18c76..f6e4090ed5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/SpellList.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/SpellList.kt @@ -1,6 +1,8 @@ package at.petrak.hexcasting.api.casting import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.iota.IotaType +import net.minecraft.network.codec.ByteBufCodecs /** * Restricted interface for functional lists. @@ -90,4 +92,17 @@ sealed class SpellList : Iterable { return car } } + + companion object { + @JvmStatic + val CODEC = IotaType.TYPED_CODEC.listOf().xmap( + { list -> LList(list) as SpellList }, + { b -> b.toList() } + ) + @JvmStatic + val STREAM_CODEC = IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()).map( + { list -> LList(list) as SpellList }, + { b -> b.toList() } + ) + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt index fcf17d08d0..75e3a246b0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt @@ -20,17 +20,18 @@ interface SpellAction : Action { fun awardsCastingStat(ctx: CastingEnvironment): Boolean = true + fun executeWithUserdata( + args: List, + env: CastingEnvironment, + userData: CompoundTag + ): Result = + execute(args, env) + fun execute( args: List, env: CastingEnvironment ): Result - fun executeWithUserdata( - args: List, env: CastingEnvironment, userData: CompoundTag - ): Result { - return this.execute(args, env) - } - override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { val stack = image.stack.toMutableList() diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index ac8bf92d0d..c37ed07f58 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.api.block.HexBlockEntity; import at.petrak.hexcasting.api.block.circle.BlockCircleComponent; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.api.utils.MediaHelper; @@ -11,7 +12,9 @@ import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; @@ -284,7 +287,7 @@ public FrozenPigment getPigment() { } @Override - protected void saveModData(CompoundTag tag) { + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { if (this.executionState != null) { tag.put(TAG_EXECUTION_STATE, this.executionState.save()); } @@ -292,17 +295,17 @@ protected void saveModData(CompoundTag tag) { tag.putLong(TAG_MEDIA, this.media); if (this.displayMsg != null && this.displayItem != null) { - tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg)); + tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg, registries)); var itemTag = new CompoundTag(); - this.displayItem.save(itemTag); + this.displayItem.save(registries, itemTag); tag.put(TAG_ERROR_DISPLAY, itemTag); } if (this.pigment != null) - tag.put(TAG_PIGMENT, this.pigment.serializeToNBT()); + tag.put(TAG_PIGMENT, FrozenPigment.CODEC.encodeStart(NbtOps.INSTANCE, pigment).getOrThrow()); } @Override - protected void loadModData(CompoundTag tag) { + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { this.executionState = null; if (tag.contains(TAG_EXECUTION_STATE, Tag.TAG_COMPOUND)) { this.lazyExecutionState = tag.getCompound(TAG_EXECUTION_STATE); @@ -315,8 +318,8 @@ protected void loadModData(CompoundTag tag) { } if (tag.contains(TAG_ERROR_MSG, Tag.TAG_STRING) && tag.contains(TAG_ERROR_DISPLAY, Tag.TAG_COMPOUND)) { - var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG)); - var display = ItemStack.of(tag.getCompound(TAG_ERROR_DISPLAY)); + var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG), registries); + var display = ItemStack.parseOptional(registries, tag); this.displayMsg = msg; this.displayItem = display; } else { @@ -324,7 +327,7 @@ protected void loadModData(CompoundTag tag) { this.displayItem = null; } if (tag.contains(TAG_PIGMENT, Tag.TAG_COMPOUND)) - this.pigment = FrozenPigment.fromNBT(tag.getCompound(TAG_PIGMENT)); + this.pigment = FrozenPigment.CODEC.parse(NbtOps.INSTANCE, tag.getCompound(TAG_PIGMENT)).getOrThrow(); } public void applyScryingLensOverlay(List> lines, diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java index f95fa84f01..b62b4ec3c5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java @@ -10,10 +10,7 @@ import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.NbtUtils; -import net.minecraft.nbt.Tag; +import net.minecraft.nbt.*; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -166,35 +163,37 @@ public CompoundTag save() { out.put(TAG_CURRENT_POS, NbtUtils.writeBlockPos(this.currentPos)); out.putByte(TAG_ENTERED_FROM, (byte) this.enteredFrom.ordinal()); - out.put(TAG_IMAGE, this.currentImage.serializeToNbt()); + out.put(TAG_IMAGE, CastingImage.getCODEC().encodeStart(NbtOps.INSTANCE, currentImage).getOrThrow()); if (this.caster != null) out.putUUID(TAG_CASTER, this.caster); if (this.casterPigment != null) - out.put(TAG_PIGMENT, this.casterPigment.serializeToNBT()); + out.put(TAG_PIGMENT, FrozenPigment.CODEC.encodeStart(NbtOps.INSTANCE, casterPigment).getOrThrow()); return out; } public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { - var startPos = NbtUtils.readBlockPos(nbt.getCompound(TAG_IMPETUS_POS)); + var startPos = NbtUtils.readBlockPos(nbt, TAG_IMPETUS_POS).orElseThrow(); var startDir = Direction.values()[nbt.getByte(TAG_IMPETUS_DIR)]; var knownPositions = new HashSet(); var knownTag = nbt.getList(TAG_KNOWN_POSITIONS, Tag.TAG_COMPOUND); for (var tag : knownTag) { - knownPositions.add(NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE))); + var pos = readBlockPos(HexUtils.downcast(tag, IntArrayTag.TYPE).getAsIntArray()); + pos.ifPresent(knownPositions::add); } var reachedPositions = new ArrayList(); var reachedTag = nbt.getList(TAG_REACHED_POSITIONS, Tag.TAG_COMPOUND); for (var tag : reachedTag) { - reachedPositions.add(NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE))); + var pos = readBlockPos(HexUtils.downcast(tag, IntArrayTag.TYPE).getAsIntArray()); + pos.ifPresent(reachedPositions::add); } - var currentPos = NbtUtils.readBlockPos(nbt.getCompound(TAG_CURRENT_POS)); + var currentPos = NbtUtils.readBlockPos(nbt, TAG_CURRENT_POS).orElseThrow(); var enteredFrom = Direction.values()[nbt.getByte(TAG_ENTERED_FROM)]; - var image = CastingImage.loadFromNbt(nbt.getCompound(TAG_IMAGE), world); + var image = CastingImage.getCODEC().parse(NbtOps.INSTANCE, nbt.getCompound(TAG_IMAGE)).getOrThrow(); UUID caster = null; if (nbt.hasUUID(TAG_CASTER)) @@ -202,12 +201,16 @@ public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { FrozenPigment pigment = null; if (nbt.contains(TAG_PIGMENT, Tag.TAG_COMPOUND)) - pigment = FrozenPigment.fromNBT(nbt.getCompound(TAG_PIGMENT)); + pigment = FrozenPigment.CODEC.parse(NbtOps.INSTANCE, nbt.getCompound(TAG_PIGMENT)).getOrThrow(); return new CircleExecutionState(startPos, startDir, knownPositions, reachedPositions, currentPos, enteredFrom, image, caster, pigment); } + private static Optional readBlockPos(int[] aint) { + return aint.length == 3 ? Optional.of(new BlockPos(aint[0], aint[1], aint[2])) : Optional.empty(); + } + /** * Update this, also mutates the impetus. *

diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java index ebd47a1e65..2365a922ff 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java @@ -12,6 +12,7 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexAttributes; import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -230,7 +231,7 @@ public void postCast(CastingImage image) { * Return whether this env can cast great spells. */ public boolean isEnlightened() { - var adv = this.world.getServer().getAdvancements().getAdvancement(modLoc("enlightenment")); + var adv = this.world.getServer().getAdvancements().get(modLoc("enlightenment")); if (adv == null) return false; @@ -249,7 +250,7 @@ public boolean isEnlightened() { */ public long extractMedia(long cost, boolean simulate) { if (this.getCastingEntity() != null){ - cost = (long) (cost * this.getCastingEntity().getAttributeValue(HexAttributes.MEDIA_CONSUMPTION_MODIFIER)); + cost = (long) (cost * this.getCastingEntity().getAttributeValue(Holder.direct(HexAttributes.MEDIA_CONSUMPTION_MODIFIER))); } for (var extractMediaComponent : preMediaExtract) cost = extractMediaComponent.onExtractMedia(cost, simulate); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt index 3fcf1bf766..90e7285b37 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt @@ -1,6 +1,13 @@ package at.petrak.hexcasting.api.casting.eval +import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.iota.IotaType import net.minecraft.nbt.CompoundTag +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec +import java.util.* +import kotlin.jvm.optionals.getOrNull /** * Information sent back to the client @@ -11,7 +18,26 @@ data class ExecutionClientView( // These must be tags so the wrapping of the text can happen on the client // otherwise we don't know when to stop rendering - val stackDescs: List, - val ravenmind: CompoundTag?, -) + val stackDescs: List, + val ravenmind: CompoundTag? +) { + + companion object { + @JvmStatic + val STREAM_CODEC: StreamCodec = + StreamCodec.composite( + ByteBufCodecs.BOOL, ExecutionClientView::isStackClear, + ByteBufCodecs.idMapper( + { ResolvedPatternType.entries[it] }, + ResolvedPatternType::ordinal + ), ExecutionClientView::resolutionType, + IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), ExecutionClientView::stackDescs, + ByteBufCodecs.optional(ByteBufCodecs.COMPOUND_TAG).map( + { it.getOrNull() }, + Optional::ofNullable + ), ExecutionClientView::ravenmind, + ::ExecutionClientView + ) + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt index 6108850727..ac4ec14fbe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt @@ -2,26 +2,40 @@ package at.petrak.hexcasting.api.casting.eval import at.petrak.hexcasting.api.casting.math.HexCoord import at.petrak.hexcasting.api.casting.math.HexPattern -import at.petrak.hexcasting.api.utils.NBTBuilder -import net.minecraft.nbt.CompoundTag -import java.util.* +import com.mojang.serialization.Codec +import com.mojang.serialization.codecs.RecordCodecBuilder +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec data class ResolvedPattern(val pattern: HexPattern, val origin: HexCoord, var type: ResolvedPatternType) { - fun serializeToNBT() = NBTBuilder { - "Pattern" %= pattern.serializeToNBT() - "OriginQ" %= origin.q - "OriginR" %= origin.r - "Valid" %= type.name.lowercase(Locale.ROOT) - } + + constructor(pattern: HexPattern, q: Int, r: Int, type: ResolvedPatternType): this(pattern, HexCoord(q, r), type) companion object { - @JvmStatic - fun fromNBT(tag: CompoundTag): ResolvedPattern { - val pattern = HexPattern.fromNBT(tag.getCompound("Pattern")) - val origin = HexCoord(tag.getInt("OriginQ"), tag.getInt("OriginR")) - val valid = ResolvedPatternType.fromString(tag.getString("Valid")) - return ResolvedPattern(pattern, origin, valid) - } + @JvmField + val CODEC: Codec = RecordCodecBuilder.create({instance -> instance.group( + HexPattern.CODEC.fieldOf("pattern").forGetter { it.pattern }, + Codec.INT.fieldOf("OriginQ").forGetter { it.origin.q }, + Codec.INT.fieldOf("OriginR").forGetter { it.origin.r }, + Codec.STRING.xmap( + { ResolvedPatternType.fromString(it) }, + { it.name.lowercase() } + ).fieldOf("Valid").forGetter { it.type } + ).apply(instance, ::ResolvedPattern) + }) + + @JvmField + val STREAM_CODEC: StreamCodec = StreamCodec.composite( + HexPattern.STREAM_CODEC, ResolvedPattern::pattern, + ByteBufCodecs.VAR_INT, { it.origin.q }, + ByteBufCodecs.VAR_INT, { it.origin.r }, + ByteBufCodecs.STRING_UTF8.map( + { ResolvedPatternType.fromString(it) }, + { it.name.lowercase() } + ), ResolvedPattern::type, + ::ResolvedPattern + ) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java index 1fb6698bf7..f6059a9779 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java @@ -15,6 +15,7 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.common.lib.HexAttributes; import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; @@ -132,7 +133,7 @@ public long extractMediaEnvironment(long cost, boolean simulate) { public boolean isVecInRangeEnvironment(Vec3 vec) { var caster = this.execState.getCaster(this.world); if (caster != null) { - double sentinelRadius = caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); + double sentinelRadius = caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); if (vec.distanceToSqr(caster.position()) <= caster.getBbHeight() * caster.getBbHeight()) { return true; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java index 750a48fa23..433fc267ba 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java @@ -18,6 +18,7 @@ import at.petrak.hexcasting.common.lib.HexDamageTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; @@ -48,8 +49,8 @@ protected PlayerBasedCastEnv(ServerPlayer caster, InteractionHand castingHand) { super(caster.serverLevel()); this.caster = caster; this.castingHand = castingHand; - this.ambitRadius = caster.getAttributeValue(HexAttributes.AMBIT_RADIUS); - this.sentinelRadius = caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); + this.ambitRadius = caster.getAttributeValue(Holder.direct(HexAttributes.AMBIT_RADIUS)); + this.sentinelRadius = caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); } @Override @@ -72,11 +73,11 @@ public void postExecution(CastResult result) { } } if (this.caster != null){ - double ambitAttribute = this.caster.getAttributeValue(HexAttributes.AMBIT_RADIUS); + double ambitAttribute = this.caster.getAttributeValue(Holder.direct(HexAttributes.AMBIT_RADIUS)); if (this.ambitRadius != ambitAttribute){ this.ambitRadius = ambitAttribute; } - double sentinelAttribute = this.caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); + double sentinelAttribute = this.caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); if (this.sentinelRadius != sentinelAttribute){ this.sentinelRadius = sentinelAttribute; } @@ -175,9 +176,12 @@ protected long extractMediaFromInventory(long costLeft, boolean allowOvercast, b } protected boolean canOvercast() { - var adv = this.world.getServer().getAdvancements().getAdvancement(modLoc("y_u_no_cast_angy")); - var advs = this.caster.getAdvancements(); - return advs.getOrStartProgress(adv).isDone(); + var adv = this.world.getServer().getAdvancements().get(modLoc("y_u_no_cast_angy")); + if(adv != null) { + var advs = this.caster.getAdvancements(); + return advs.getOrStartProgress(adv).isDone(); + } + return false; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java index 29e80d3817..537c146b71 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java @@ -14,6 +14,7 @@ import at.petrak.hexcasting.common.msgs.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.network.chat.Component; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; @@ -131,7 +132,7 @@ public static void handleNewPatternOnServer(ServerPlayer sender, MsgNewSpellPatt IXplatAbstractions.INSTANCE.sendPacketToPlayer(sender, new MsgNewSpellPatternS2C(clientInfo, resolvedPatterns.size() - 1)); - IMessage packet; + CustomPacketPayload packet; if (clientInfo.isStackClear()) { packet = new MsgClearSpiralPatternsS2C(sender.getUUID()); } else { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt index 3ffd771bcd..573f73fb61 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt @@ -1,57 +1,59 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.HexAPI +import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota.Companion.TAG_ESCAPED import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota.Companion.TAG_IOTAS import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.utils.* +import com.mojang.serialization.Codec +import com.mojang.serialization.codecs.RecordCodecBuilder import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.ListTag import net.minecraft.nbt.Tag +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel +import net.minecraft.util.ExtraCodecs import net.minecraft.world.entity.Entity +import java.util.Optional +import kotlin.jvm.optionals.getOrNull /** * The state of a casting VM, containing the stack and all */ -data class CastingImage private constructor( +data class CastingImage( val stack: List, val parenCount: Int, val parenthesized: List, val escapeNext: Boolean, val opsConsumed: Long, - val userData: CompoundTag ) { constructor() : this(listOf(), 0, listOf(), false, 0, CompoundTag()) data class ParenthesizedIota(val iota: Iota, val escaped: Boolean) { companion object { + val CODEC = RecordCodecBuilder.create { inst -> + inst.group( + IotaType.TYPED_CODEC.fieldOf("iota").forGetter { it.iota }, + Codec.BOOL.fieldOf("escaped").forGetter { it.escaped } + ).apply(inst, ::ParenthesizedIota) + } + val STREAM_CODEC = StreamCodec.composite( + IotaType.TYPED_STREAM_CODEC, ParenthesizedIota::iota, + ByteBufCodecs.BOOL, ParenthesizedIota::escaped, + ::ParenthesizedIota + ) + const val TAG_IOTAS = "iotas" const val TAG_ESCAPED = "escaped" } } - /** - * Returns an empty list if it's too complicated. - */ - private fun Iterable.serializeToNBT(): CompoundTag { - val tag = CompoundTag() - - if (IotaType.isTooLargeToSerialize(this.map { it.iota })) { - tag.put(TAG_IOTAS, ListTag()) - tag.put(TAG_ESCAPED, ListTag()) - } else { - tag.put(TAG_IOTAS, ListIota(this.map { it.iota }).serialize()) - tag.put(TAG_ESCAPED, this.map { it.escaped }.serializeToNBT()) - } - - return tag - } - /** * Return a copy of this with the given number of ops additionally exhausted */ @@ -72,60 +74,32 @@ data class CastingImage private constructor( */ fun withResetEscape() = this.copy(parenCount = 0, parenthesized = listOf(), escapeNext = false) - fun serializeToNbt() = NBTBuilder { - TAG_STACK %= stack.serializeToNBT() - - TAG_PAREN_COUNT %= parenCount - TAG_ESCAPE_NEXT %= escapeNext - TAG_PARENTHESIZED %= parenthesized.serializeToNBT() - TAG_OPS_CONSUMED %= opsConsumed - - TAG_USERDATA %= userData - } - companion object { - const val TAG_STACK = "stack" - const val TAG_PAREN_COUNT = "open_parens" - const val TAG_PARENTHESIZED = "parenthesized" - const val TAG_ESCAPE_NEXT = "escape_next" - const val TAG_OPS_CONSUMED = "ops_consumed" - const val TAG_USERDATA = "userdata" - @JvmStatic - fun loadFromNbt(tag: CompoundTag, world: ServerLevel): CastingImage { - return try { - val stack = mutableListOf() - val stackTag = tag.getList(TAG_STACK, Tag.TAG_COMPOUND) - for (subtag in stackTag) { - val datum = IotaType.deserialize(subtag.asCompound, world) - stack.add(datum) - } - - val userData = if (tag.contains(TAG_USERDATA)) { - tag.getCompound(TAG_USERDATA) - } else { - CompoundTag() - } - - val parenthesized = mutableListOf() - val parenTag = tag.getCompound(TAG_PARENTHESIZED) - val parenIotasTag = parenTag.getList(TAG_IOTAS, Tag.TAG_COMPOUND) - val parenEscapedTag = parenTag.getByteArray(TAG_ESCAPED) - - for ((subtag, isEscapedByte) in parenIotasTag.zipWithDefault(parenEscapedTag) { _ -> 0 }) { - parenthesized.add(ParenthesizedIota(IotaType.deserialize(subtag.downcast(CompoundTag.TYPE), world), isEscapedByte != 0.toByte())) - } - - val parenCount = tag.getInt(TAG_PAREN_COUNT) - val escapeNext = tag.getBoolean(TAG_ESCAPE_NEXT) - val opsUsed = tag.getLong(TAG_OPS_CONSUMED) - - CastingImage(stack, parenCount, parenthesized, escapeNext, opsUsed, userData) - } catch (exn: Exception) { - HexAPI.LOGGER.warn("error while loading a CastingImage", exn) - CastingImage() + val CODEC = RecordCodecBuilder.create { inst -> + inst.group( + IotaType.TYPED_CODEC.listOf().fieldOf("stack").forGetter { it.stack }, + Codec.INT.fieldOf("open_parens").forGetter { it.parenCount }, + ParenthesizedIota.CODEC.listOf().fieldOf("parenthesized").forGetter { it.parenthesized }, + Codec.BOOL.fieldOf("escape_next").forGetter { it.escapeNext }, + Codec.LONG.fieldOf("ops_consumed").forGetter { it.opsConsumed }, + CompoundTag.CODEC.fieldOf("userData").forGetter { it.userData } + ).apply(inst) { a, b, c, d, e, f -> + CastingImage(a, b, c, d, e, f) } - } + }.orElseGet(::CastingImage) + @JvmStatic + val STREAM_CODEC = StreamCodec.composite( + IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), CastingImage::stack, + ByteBufCodecs.VAR_INT, CastingImage::parenCount, + ParenthesizedIota.STREAM_CODEC.apply(ByteBufCodecs.list()), CastingImage::parenthesized, + ByteBufCodecs.BOOL, CastingImage::escapeNext, + ByteBufCodecs.VAR_LONG, CastingImage::opsConsumed, + ByteBufCodecs.COMPOUND_TAG, { it.userData }, + { a, b, c, d, e, f -> + CastingImage(a, b, c, d, e, f) + } + ) @JvmStatic fun checkAndMarkGivenMotion(userData: CompoundTag, entity: Entity): Boolean { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt index 11503b0b6f..c6e4336a47 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt @@ -1,7 +1,6 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.HexAPI -import at.petrak.hexcasting.api.casting.PatternShapeMatch.* import at.petrak.hexcasting.api.casting.SpellList import at.petrak.hexcasting.api.casting.eval.* import at.petrak.hexcasting.api.casting.eval.sideeffects.OperatorSideEffect @@ -12,8 +11,10 @@ import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.casting.iota.PatternIota import at.petrak.hexcasting.api.casting.math.HexDir import at.petrak.hexcasting.api.casting.math.HexPattern -import at.petrak.hexcasting.api.casting.mishaps.* -import at.petrak.hexcasting.api.utils.* +import at.petrak.hexcasting.api.casting.mishaps.Mishap +import at.petrak.hexcasting.api.casting.mishaps.MishapInternalException +import at.petrak.hexcasting.api.casting.mishaps.MishapStackSize +import at.petrak.hexcasting.api.casting.mishaps.MishapTooManyCloseParens import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import net.minecraft.nbt.CompoundTag import net.minecraft.server.level.ServerLevel @@ -86,12 +87,14 @@ class CastingVM(var image: CastingImage, val env: CastingEnvironment) { if (lastResolutionType.success) ResolvedPatternType.EVALUATED else ResolvedPatternType.ERRORED } - val (stackDescs, ravenmind) = generateDescs() + val ravenmind: CompoundTag? = image.userData + ?.takeIf { it.contains(HexAPI.RAVENMIND_USERDATA) } + ?.getCompound(HexAPI.RAVENMIND_USERDATA) val isStackClear = image.stack.isEmpty() && image.parenCount == 0 && !image.escapeNext && ravenmind == null this.env.postCast(image) - return ExecutionClientView(isStackClear, lastResolutionType, stackDescs, ravenmind) + return ExecutionClientView(isStackClear, lastResolutionType, image.stack, ravenmind) } /** @@ -158,14 +161,6 @@ class CastingVM(var image: CastingImage, val env: CastingEnvironment) { } } - fun generateDescs(): Pair, CompoundTag?> { - val stackDescs = this.image.stack.map { IotaType.serialize(it) } - val ravenmind = if (this.image.userData.contains(HexAPI.RAVENMIND_USERDATA)) { - this.image.userData.getCompound(HexAPI.RAVENMIND_USERDATA) - } else null - return Pair(stackDescs, ravenmind) - } - /** * Return a non-null value if we handled this in some sort of parenthesey way, * either escaping it onto the stack or changing the parenthese-handling state. diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt index f565135837..ff25b70b57 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt @@ -2,12 +2,24 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.casting.SpellList import at.petrak.hexcasting.api.casting.eval.CastResult +import at.petrak.hexcasting.api.casting.iota.GarbageIota import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.iota.IotaType +import at.petrak.hexcasting.common.lib.HexRegistries import at.petrak.hexcasting.common.lib.hex.HexContinuationTypes +import at.petrak.hexcasting.xplat.IXplatAbstractions +import com.mojang.serialization.Codec +import com.mojang.serialization.DataResult +import com.mojang.serialization.MapCodec import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.Tag +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.resources.ResourceLocation import net.minecraft.server.level.ServerLevel +import java.util.function.Function +import java.util.function.Supplier /** * A single frame of evaluation during the execution of a spell. @@ -37,11 +49,6 @@ interface ContinuationFrame { */ fun breakDownwards(stack: List): Pair> - /** - * Serializes this frame. Used for things like delays, where we pause execution. - */ - fun serializeToNBT(): CompoundTag - /** * Return the number of iotas contained inside this frame, used for determining whether it is valid to serialise. */ @@ -50,41 +57,36 @@ interface ContinuationFrame { val type: Type<*> interface Type { - fun deserializeFromNBT(tag: CompoundTag, world: ServerLevel): U? - } - companion object { - /** - * Takes a tag containing the ContinuationFrame.Type resourcelocation and the serialized continuation frame, and returns - * the deserialized continuation frame. - */ - @JvmStatic - fun fromNBT(tag: CompoundTag, world: ServerLevel): ContinuationFrame { - val type = getTypeFromTag(tag) ?: return FrameEvaluate(SpellList.LList(0, listOf()), false) + fun codec(): MapCodec - return (tag.get(HexContinuationTypes.KEY_DATA) as? CompoundTag)?.let { type.deserializeFromNBT(it, world) } - ?: FrameEvaluate(SpellList.LList(0, listOf()), false) - } + fun streamCodec(): StreamCodec + + companion object { + //TODO if doesn't exist use `FrameEvaluate(SpellList.LList(0, listOf()), false)` as default value + @JvmStatic + val TYPED_CODEC: Codec = Codec.lazyInitialized { + IXplatAbstractions.INSTANCE + .continuationTypeRegistry + .byNameCodec() + .dispatch( + "type", + ContinuationFrame::type, + Type<*>::codec + ) + } - /** - * Takes a continuation frame and serializes it along with its type. - */ - @JvmStatic - fun toNBT(frame: ContinuationFrame): CompoundTag { - val type = frame.type - val typeId = HexContinuationTypes.REGISTRY.getKey(type) - ?: throw IllegalStateException( - "Tried to serialize an unregistered continuation type. Continuation: " + frame - + " ; Type" + type.javaClass.typeName + @JvmStatic + val TYPED_STREAM_CODEC: StreamCodec = ByteBufCodecs + .registry(HexRegistries.CONTINUATION_TYPE) + .dispatch( + ContinuationFrame::type, + Type<*>::streamCodec ) - - val data = frame.serializeToNBT() - - val out = CompoundTag() - out.putString(HexContinuationTypes.KEY_TYPE, typeId.toString()) - out.put(HexContinuationTypes.KEY_DATA, data) - return out } + } + + companion object { /** * This method attempts to find the type from the `type` key. @@ -98,9 +100,11 @@ interface ContinuationFrame { } val typeKey = tag.getString(HexContinuationTypes.KEY_TYPE) + val typeLoc = ResourceLocation.tryParse(typeKey) + ?: return null - return typeLoc?.let { HexContinuationTypes.REGISTRY[it] } + return HexContinuationTypes.REGISTRY[typeLoc] } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameEvaluate.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameEvaluate.kt index 141148dfdc..c67b2683ba 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameEvaluate.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameEvaluate.kt @@ -5,13 +5,13 @@ import at.petrak.hexcasting.api.casting.eval.CastResult import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.ListIota -import at.petrak.hexcasting.api.utils.NBTBuilder -import at.petrak.hexcasting.api.utils.getList -import at.petrak.hexcasting.api.utils.serializeToNBT import at.petrak.hexcasting.common.lib.hex.HexEvalSounds -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes -import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.Tag +import com.mojang.serialization.Codec +import com.mojang.serialization.MapCodec +import com.mojang.serialization.codecs.RecordCodecBuilder +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel /** @@ -48,27 +48,32 @@ data class FrameEvaluate(val list: SpellList, val isMetacasting: Boolean) : Cont } } - override fun serializeToNBT() = NBTBuilder { - "patterns" %= list.serializeToNBT() - "isMetacasting" %= isMetacasting - } - override fun size() = list.size() override val type: ContinuationFrame.Type<*> = TYPE companion object { + @JvmField val TYPE: ContinuationFrame.Type = object : ContinuationFrame.Type { - override fun deserializeFromNBT(tag: CompoundTag, world: ServerLevel): FrameEvaluate { - return FrameEvaluate( - HexIotaTypes.LIST.deserialize( - tag.getList("patterns", Tag.TAG_COMPOUND), - world - )!!.list, - tag.getBoolean("isMetacasting")) + val CODEC = RecordCodecBuilder.mapCodec { inst -> + inst.group( + SpellList.CODEC.fieldOf("patterns").forGetter { it.list }, + Codec.BOOL.fieldOf("isMetacasting").forGetter { it.isMetacasting } + ).apply(inst, ::FrameEvaluate) } + val STREAM_CODEC = StreamCodec.composite( + SpellList.STREAM_CODEC, FrameEvaluate::list, + ByteBufCodecs.BOOL, FrameEvaluate::isMetacasting, + ::FrameEvaluate + ) + + + override fun codec(): MapCodec = + CODEC + override fun streamCodec(): StreamCodec = + STREAM_CODEC } } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt index 72bbb8c80c..ed16b1768c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt @@ -6,7 +6,10 @@ import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.NullIota import at.petrak.hexcasting.api.utils.NBTBuilder import at.petrak.hexcasting.common.lib.hex.HexEvalSounds +import com.mojang.serialization.MapCodec import net.minecraft.nbt.CompoundTag +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel /** @@ -24,7 +27,7 @@ object FrameFinishEval : ContinuationFrame { harness: CastingVM ): CastResult { return CastResult( - NullIota(), + NullIota.INSTANCE, continuation, null, listOf(), @@ -33,13 +36,19 @@ object FrameFinishEval : ContinuationFrame { ) } - override fun serializeToNBT() = CompoundTag() - override fun size() = 0 @JvmField val TYPE: ContinuationFrame.Type = object : ContinuationFrame.Type { - override fun deserializeFromNBT(tag: CompoundTag, world: ServerLevel) = FrameFinishEval + val CODEC = MapCodec.unit(FrameFinishEval) + val STREAM_CODEC = StreamCodec.unit(FrameFinishEval) + + override fun codec(): MapCodec = + CODEC + + override fun streamCodec(): StreamCodec = + STREAM_CODEC + } override val type = TYPE diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameForEach.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameForEach.kt index 02d9612767..0017aeecf3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameForEach.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameForEach.kt @@ -4,16 +4,17 @@ import at.petrak.hexcasting.api.casting.SpellList import at.petrak.hexcasting.api.casting.eval.CastResult import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.ListIota -import at.petrak.hexcasting.api.utils.NBTBuilder -import at.petrak.hexcasting.api.utils.getList -import at.petrak.hexcasting.api.utils.hasList -import at.petrak.hexcasting.api.utils.serializeToNBT import at.petrak.hexcasting.common.lib.hex.HexEvalSounds -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes -import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.Tag +import com.mojang.serialization.MapCodec +import com.mojang.serialization.codecs.RecordCodecBuilder +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel +import java.util.* +import kotlin.jvm.optionals.getOrNull /** * A frame representing all the state for a Thoth evaluation. @@ -81,14 +82,6 @@ data class FrameForEach( ) } - override fun serializeToNBT() = NBTBuilder { - "data" %= data.serializeToNBT() - "code" %= code.serializeToNBT() - if (baseStack != null) - "base" %= baseStack.serializeToNBT() - "accumulator" %= acc.serializeToNBT() - } - override fun size() = data.size() + code.size() + acc.size + (baseStack?.size ?: 0) override val type: ContinuationFrame.Type<*> = TYPE @@ -96,21 +89,33 @@ data class FrameForEach( companion object { @JvmField val TYPE: ContinuationFrame.Type = object : ContinuationFrame.Type { - override fun deserializeFromNBT(tag: CompoundTag, world: ServerLevel): FrameForEach { - return FrameForEach( - HexIotaTypes.LIST.deserialize(tag.getList("data", Tag.TAG_COMPOUND), world)!!.list, - HexIotaTypes.LIST.deserialize(tag.getList("code", Tag.TAG_COMPOUND), world)!!.list, - if (tag.hasList("base", Tag.TAG_COMPOUND)) - HexIotaTypes.LIST.deserialize(tag.getList("base", Tag.TAG_COMPOUND), world)!!.list.toList() - else - null, - HexIotaTypes.LIST.deserialize( - tag.getList("accumulator", Tag.TAG_COMPOUND), - world - )!!.list.toMutableList() - ) + val CODEC = RecordCodecBuilder.mapCodec { inst -> + inst.group( + SpellList.CODEC.fieldOf("data").forGetter { it.data }, + SpellList.CODEC.fieldOf("code").forGetter { it.code }, + IotaType.TYPED_CODEC.listOf().optionalFieldOf("base").forGetter { Optional.ofNullable(it.baseStack) }, + IotaType.TYPED_CODEC.listOf().fieldOf("accumulator").forGetter { it.acc } + ).apply(inst) { a, b, c, d -> + FrameForEach(a, b, c.getOrNull(), d) + } + } + val STREAM_CODEC = StreamCodec.composite( + SpellList.STREAM_CODEC, FrameForEach::data, + SpellList.STREAM_CODEC, FrameForEach::code, + ByteBufCodecs.optional(IotaType.TYPED_STREAM_CODEC + .apply(ByteBufCodecs.list())), { Optional.ofNullable(it.baseStack) }, + IotaType.TYPED_STREAM_CODEC + .apply(ByteBufCodecs.list()), FrameForEach::acc + ) { a, b, c, d -> + FrameForEach(a, b, c.getOrNull(), d) } + + override fun codec(): MapCodec = + CODEC + + override fun streamCodec(): StreamCodec = + STREAM_CODEC } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/SpellContinuation.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/SpellContinuation.kt index ec706c2858..774d9ea60d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/SpellContinuation.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/SpellContinuation.kt @@ -1,10 +1,13 @@ package at.petrak.hexcasting.api.casting.eval.vm -import at.petrak.hexcasting.api.utils.NBTBuilder -import at.petrak.hexcasting.api.utils.getList -import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.Tag -import net.minecraft.server.level.ServerLevel +import com.mojang.datafixers.util.Either +import com.mojang.serialization.Codec +import com.mojang.serialization.codecs.RecordCodecBuilder +import io.netty.buffer.ByteBuf +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec +import java.util.function.Function /** * A continuation during the execution of a spell. @@ -16,31 +19,43 @@ sealed interface SpellContinuation { fun pushFrame(frame: ContinuationFrame): SpellContinuation = NotDone(frame, this) - fun serializeToNBT() = NBTBuilder { - TAG_FRAME %= list(getNBTFrames()) - } - fun getNBTFrames(): List { - var self = this - val frames = mutableListOf() - while (self is NotDone) { - frames.add(ContinuationFrame.toNBT(self.frame)) - self = self.next - } - return frames - } companion object { - const val TAG_FRAME = "frame" - + // TODO port: maybe serialize to list like before? + // TODO port: maybe unit should be first @JvmStatic - fun fromNBT(nbt: CompoundTag, world: ServerLevel): SpellContinuation { - val frames = nbt.getList(TAG_FRAME, Tag.TAG_COMPOUND) - var result: SpellContinuation = Done - for (frame in frames.asReversed()) { - if (frame is CompoundTag) { - result = result.pushFrame(ContinuationFrame.fromNBT(frame, world)) + val CODEC = Codec.recursive( + SpellContinuation::class.java.simpleName + ) { recursed: Codec -> + Codec.withAlternative( + Codec.unit(Done), + RecordCodecBuilder.create { inst -> + inst.group( + ContinuationFrame.Type.TYPED_CODEC.fieldOf("frame").forGetter { it.frame }, + recursed.fieldOf("next").forGetter { it.next } + ).apply(inst, ::NotDone) } - } - return result + ) + } + @JvmStatic + val STREAM_CODEC = StreamCodec.recursive { recursed -> + withAlternative( + StreamCodec.unit(Done), + StreamCodec.composite( + ContinuationFrame.Type.TYPED_STREAM_CODEC, NotDone::frame, + recursed, NotDone::next, + ::NotDone + ).map(Function.identity()) { it as NotDone } + ) + } + + private fun withAlternative(primary: StreamCodec, alternative: StreamCodec): StreamCodec { + return ByteBufCodecs.either( + primary, + alternative + ).map( + Function { either: Either -> Either.unwrap(either) }, + Function { value: T -> Either.left(value) } + ) } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java index 91cf0b339d..8b03fc33c9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java @@ -2,21 +2,26 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; import net.minecraft.nbt.ByteTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; public class BooleanIota extends Iota { + private boolean value; public BooleanIota(boolean d) { - super(HexIotaTypes.BOOLEAN, d); + super(() -> HexIotaTypes.BOOLEAN); + this.value = d; } public boolean getBool() { - return (boolean) this.payload; + return value; } @Override @@ -32,21 +37,30 @@ public boolean toleratesOther(Iota that) { } @Override - public @NotNull Tag serialize() { - // there is no boolean tag :( - return ByteTag.valueOf(this.getBool()); + public int hashCode() { + return Boolean.hashCode(value); + } + + @Override + public Component display() { + return BooleanIota.display(getBool()); } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = Codec.BOOL + .xmap(BooleanIota::new, BooleanIota::getBool) + .fieldOf("value"); + public static final StreamCodec STREAM_CODEC = + ByteBufCodecs.BOOL.map(BooleanIota::new, BooleanIota::getBool).mapStream(buffer -> buffer); + @Override - public BooleanIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return BooleanIota.deserialize(tag); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return BooleanIota.display(BooleanIota.deserialize(tag).getBool()); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java index 13764c4675..7eca19aa6d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java @@ -4,13 +4,17 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.NotNull; @@ -21,13 +25,15 @@ */ public class ContinuationIota extends Iota { public static final Component DISPLAY = Component.translatable("hexcasting.tooltip.jump_iota").withStyle(ChatFormatting.RED); + private SpellContinuation value; public ContinuationIota(SpellContinuation cont) { - super(HexIotaTypes.CONTINUATION, cont); + super(() -> HexIotaTypes.CONTINUATION); + this.value = cont; } public SpellContinuation getContinuation() { - return (SpellContinuation) this.payload; + return value; } @Override @@ -40,12 +46,6 @@ public boolean toleratesOther(Iota that) { return typesMatch(this, that) && that instanceof ContinuationIota cont && cont.getContinuation().equals(getContinuation()); } - @Override - public @NotNull - Tag serialize() { - return getContinuation().serializeToNBT(); - } - @Override public @NotNull CastResult execute(CastingVM vm, ServerLevel world, SpellContinuation continuation) { return new CastResult(this, this.getContinuation(), vm.getImage(), List.of(), ResolvedPatternType.EVALUATED, HexEvalSounds.HERMES); @@ -69,16 +69,31 @@ public int size() { return Math.min(size, 1); } + @Override + public int hashCode() { + return value.hashCode(); + } + + @Override + public Component display() { + return DISPLAY; + } + public static IotaType TYPE = new IotaType<>() { + public static final MapCodec CODEC = SpellContinuation.getCODEC() + .xmap(ContinuationIota::new, ContinuationIota::getContinuation) + .fieldOf("value"); + public static final StreamCodec STREAM_CODEC = + SpellContinuation.getSTREAM_CODEC().map(ContinuationIota::new, ContinuationIota::getContinuation); + @Override - public @NotNull ContinuationIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - var compoundTag = HexUtils.downcast(tag, CompoundTag.TYPE); - return new ContinuationIota(SpellContinuation.fromNBT(compoundTag, world)); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return DISPLAY; + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java index e9ff20f57c..229fded62a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java @@ -2,23 +2,30 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.nbt.DoubleTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public class DoubleIota extends Iota { public static final double TOLERANCE = 0.0001; + private double value; public DoubleIota(double d) { - super(HexIotaTypes.DOUBLE, d); + super(() -> HexIotaTypes.DOUBLE); + this.value = d; } public double getDouble() { - return HexUtils.fixNAN((Double) this.payload); + return HexUtils.fixNAN((Double) value); } @Override @@ -38,20 +45,30 @@ public static boolean tolerates(double a, double b) { } @Override - public @NotNull Tag serialize() { - return DoubleTag.valueOf(this.getDouble()); + public int hashCode() { + return Double.hashCode(value); + } + + @Override + public Component display() { + return DoubleIota.display(value); } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = Codec.DOUBLE + .xmap(DoubleIota::new, DoubleIota::getDouble) + .fieldOf("value"); + public static final StreamCodec STREAM_CODEC = + ByteBufCodecs.DOUBLE.map(DoubleIota::new, DoubleIota::getDouble).mapStream(buffer -> buffer); + @Override - public DoubleIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return DoubleIota.deserialize(tag); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return DoubleIota.display(DoubleIota.deserialize(tag).getDouble()); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java index 2a8023cf01..9e55fed8b0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java @@ -1,36 +1,96 @@ package at.petrak.hexcasting.api.casting.iota; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import com.samsthenerd.inline.api.InlineAPI; import com.samsthenerd.inline.api.data.EntityInlineData; import com.samsthenerd.inline.api.data.PlayerHeadData; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtUtils; -import net.minecraft.nbt.Tag; +import net.minecraft.core.UUIDUtil; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.ComponentSerialization; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.component.ResolvableProfile; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.lang.ref.WeakReference; +import java.util.Optional; +import java.util.UUID; + public class EntityIota extends Iota { + private final UUID entityId; + @Nullable + private WeakReference cachedEntity; + @Nullable + private Component entityName; + public EntityIota(@NotNull Entity e) { - super(HexIotaTypes.ENTITY, e); + this(e.getUUID(), getEntityNameWithInline(e)); + this.cachedEntity = new WeakReference<>(e); } - public Entity getEntity() { - return (Entity) this.payload; + public EntityIota(UUID entityId, @Nullable Component entityName) { + super(() -> HexIotaTypes.ENTITY); + this.entityId = entityId; + this.entityName = entityName; + } + + public UUID getEntityId() { + return entityId; + } + + @Nullable + public Entity getOrFindEntity(ServerLevel level) { + // First, let's try to get it from weak reference + var entity = getCachedEntity(); + if (entity != null) + return entity; + // Now let's try to fetch it from the world + entity = level.getEntity(entityId); + // Store in weak reference + if (entity != null) + cachedEntity = new WeakReference<>(entity); + return entity; + } + + @Nullable + public Entity getCachedEntity() { + if (cachedEntity != null) + if (!cachedEntity.refersTo(null)) + return cachedEntity.get(); + else + cachedEntity = null; // Clear weakref + return null; + } + + public @Nullable Component getEntityName() { + var ent = getCachedEntity(); + if(ent != null) { + var name = ent.getName(); + this.entityName = name; + return name; + } + + return getCachedEntityName(); + } + + public @Nullable Component getCachedEntityName() { + return entityName; } @Override public boolean toleratesOther(Iota that) { return typesMatch(this, that) - && that instanceof EntityIota dent - && this.getEntity() == dent.getEntity(); + && that instanceof EntityIota dent + && this.getEntityId() == dent.getEntityId(); } @Override @@ -39,63 +99,49 @@ public boolean isTruthy() { } @Override - public @NotNull - Tag serialize() { - var out = new CompoundTag(); - out.putUUID("uuid", this.getEntity().getUUID()); - out.putString("name", Component.Serializer.toJson(getEntityNameWithInline(true))); - return out; + public Component display() { + var name = getCachedEntityName(); + return name != null ? name.copy().withStyle(ChatFormatting.AQUA) : Component.translatable("hexcasting.spelldata.entity.whoknows"); } @Override - public Component display() { - return getEntityNameWithInline(false).copy().withStyle(ChatFormatting.AQUA); + public int hashCode() { + return entityId.hashCode(); } - private Component getEntityNameWithInline(boolean fearSerializer){ - MutableComponent baseName = this.getEntity().getName().copy(); - Component inlineEnt = null; - if(this.getEntity() instanceof Player player){ - inlineEnt = new PlayerHeadData(player.getGameProfile()).asText(!fearSerializer); + private static Component getEntityNameWithInline(Entity entity) { + MutableComponent baseName = entity.getName().copy(); + Component inlineEnt; + if(entity instanceof Player player){ + inlineEnt = new PlayerHeadData(new ResolvableProfile(player.getGameProfile())).asText(false); inlineEnt = inlineEnt.plainCopy().withStyle(InlineAPI.INSTANCE.withSizeModifier(inlineEnt.getStyle(), 1.5)); - } else{ - if(fearSerializer){ // we don't want to have to serialize an entity just to display it - inlineEnt = EntityInlineData.fromType(this.getEntity().getType()).asText(!fearSerializer); - } else { - inlineEnt = EntityInlineData.fromEntity(this.getEntity()).asText(!fearSerializer); - } + } else { + inlineEnt = EntityInlineData.fromType(entity.getType()).asText(false); } return baseName.append(Component.literal(": ")).append(inlineEnt); } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> + inst.group( + UUIDUtil.CODEC.fieldOf("entityId").forGetter(EntityIota::getEntityId), + ComponentSerialization.CODEC.optionalFieldOf("entityName").forGetter(iota -> Optional.ofNullable(iota.getEntityName())) + ).apply(inst, (a, b) -> new EntityIota(a, b.orElse(null)))); + public static final StreamCodec STREAM_CODEC = + StreamCodec.composite( + UUIDUtil.STREAM_CODEC, EntityIota::getEntityId, + ByteBufCodecs.optional(ComponentSerialization.STREAM_CODEC), iota -> Optional.ofNullable(iota.getEntityName()), + (a, b) -> new EntityIota(a, b.orElse(null)) + ); + @Override - public EntityIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - var ctag = HexUtils.downcast(tag, CompoundTag.TYPE); - Tag uuidTag = ctag.get("uuid"); - if (uuidTag == null) { - return null; - } - var uuid = NbtUtils.loadUUID(uuidTag); - var entity = world.getEntity(uuid); - if (entity == null) { - return null; - } - return new EntityIota(entity); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - if (!(tag instanceof CompoundTag ctag)) { - return Component.translatable("hexcasting.spelldata.entity.whoknows"); - } - if (!ctag.contains("name", Tag.TAG_STRING)) { - return Component.translatable("hexcasting.spelldata.entity.whoknows"); - } - var nameJson = ctag.getString("name"); -// return Component.literal(nameJson); - return Component.Serializer.fromJsonLenient(nameJson).withStyle(ChatFormatting.AQUA); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java index 0824985852..f0c869b00c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java @@ -1,31 +1,28 @@ package at.petrak.hexcasting.api.casting.iota; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.Random; +import net.minecraft.network.codec.StreamCodec; /** * this is LITERALLY a copy of NullIota but I can't see how to do it any better, i hate java generics */ public class GarbageIota extends Iota { + public static final GarbageIota INSTANCE = new GarbageIota(); + private static final Object NULL_SUBSTITUTE = new Object(); public static final Component DISPLAY = Component.literal("arimfexendrapuse") .withStyle(ChatFormatting.DARK_GRAY, ChatFormatting.OBFUSCATED); - private static final Random RANDOM = new Random(); - - public GarbageIota() { + private GarbageIota() { // We have to pass *something* here, but there's nothing that actually needs to go there, // so we just do this i guess - super(HexIotaTypes.GARBAGE, NULL_SUBSTITUTE); + super(() -> HexIotaTypes.GARBAGE); } @Override @@ -39,20 +36,28 @@ public boolean toleratesOther(Iota that) { } @Override - public @NotNull Tag serialize() { - return new CompoundTag(); + public int hashCode() { + return NULL_SUBSTITUTE.hashCode(); + } + + @Override + public Component display() { + return DISPLAY; } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = MapCodec.unit(GarbageIota.INSTANCE); + public static final StreamCodec STREAM_CODEC = + StreamCodec.unit(GarbageIota.INSTANCE); + @Override - public GarbageIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return new GarbageIota(); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return DISPLAY; + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java index cad6baee82..287ea80391 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java @@ -11,27 +11,27 @@ import at.petrak.hexcasting.api.casting.mishaps.MishapUnescapedValue; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import net.minecraft.nbt.Tag; +import net.minecraft.ChatFormatting; +import net.minecraft.client.gui.Font; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.FormattedCharSequence; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.function.Supplier; public abstract class Iota { @NotNull - protected final Object payload; - @NotNull - protected final IotaType type; + protected final Supplier> type; - protected Iota(@NotNull IotaType type, @NotNull Object payload) { + protected Iota(@NotNull Supplier> type) { this.type = type; - this.payload = payload; } - public @NotNull IotaType getType() { - return this.type; + public @NotNull IotaType getType() { + return this.type.get(); } abstract public boolean isTruthy(); @@ -41,13 +41,6 @@ protected Iota(@NotNull IotaType type, @NotNull Object payload) { */ abstract protected boolean toleratesOther(Iota that); - /** - * Serialize this under the {@code data} tag. - *

- * You probably don't want to call this directly; use {@link IotaType#serialize}. - */ - abstract public @NotNull Tag serialize(); - /** * This method is called when this iota is executed (i.e. Hermes is run on a list containing it, unescaped). * By default it will return a {@link CastResult} indicating an error has occurred. @@ -100,8 +93,19 @@ public int depth() { return 1; } - public Component display() { - return this.type.display(this.serialize()); + public abstract Component display(); + + public FormattedCharSequence displayWithMaxWidth(int maxWidth, Font font) { + var splitted = font.split(display(), maxWidth - font.width("...")); + if (splitted.isEmpty()) + return FormattedCharSequence.EMPTY; + else if (splitted.size() == 1) + return splitted.getFirst(); + else { + var first = splitted.getFirst(); + return FormattedCharSequence.fromPair(first, + Component.literal("...").withStyle(ChatFormatting.GRAY).getVisualOrderText()); + } } /** @@ -120,8 +124,9 @@ public static boolean tolerates(Iota a, Iota b) { return a.toleratesOther(b) || b.toleratesOther(a); } + /** + * Require overriding hashCode + */ @Override - public int hashCode() { - return payload.hashCode(); - } + public abstract int hashCode(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index c0167ae5df..66e4130482 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -1,78 +1,52 @@ package at.petrak.hexcasting.api.casting.iota; -import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.utils.HexUtils; +import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import com.mojang.datafixers.util.Pair; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.mojang.serialization.Codec; +import com.mojang.serialization.DataResult; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextColor; +import net.minecraft.network.chat.ComponentSerialization; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerLevel; import net.minecraft.util.FormattedCharSequence; -import javax.annotation.Nullable; import java.util.List; -import java.util.Objects; +import java.util.function.Function; // Take notes from ForgeRegistryEntry public abstract class IotaType { - - /** - * Spell datums are stored as such: {@code { "type": "modid:type", "datum": a_tag }}. - *

- * The {@code type} key is given when registering the spell datum type; this method - * deserializes the tag associated with {@code "datum"}. - *

- * Returning {@code null} makes the resulting datum be {@link NullIota}. - * Throwing an exception raises a mishap. - */ - @Nullable - public abstract T deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException; - - /** - * Get a display of this datum from the {@code data} tag, without the world. - * This is for use on the client. - */ - public abstract Component display(Tag tag); - - /** - * Get the color associated with this datum type. - */ - public abstract int color(); - - /** - * Get a display component that's the name of this iota type. - */ - public Component typeName() { - var key = HexIotaTypes.REGISTRY.getKey(this); - return Component.translatable("hexcasting.iota." + key) - .withStyle(style -> style.withColor(TextColor.fromRgb(color()))); - } - - public static CompoundTag serialize(Iota iota) { - var type = iota.getType(); - var typeId = HexIotaTypes.REGISTRY.getKey(type); - if (typeId == null) { - throw new IllegalStateException( - "Tried to serialize an unregistered iota type. Iota: " + iota - + " ; Type" + type.getClass().getTypeName()); - } - - // We check if it's too big on serialization; if it is we just return a garbage. - if (isTooLargeToSerialize(List.of(iota), 0)) { - // Garbage will never be too large so we just recurse - return serialize(new GarbageIota()); - } - var dataTag = iota.serialize(); - var out = new CompoundTag(); - out.putString(HexIotaTypes.KEY_TYPE, typeId.toString()); - out.put(HexIotaTypes.KEY_DATA, dataTag); - return out; - } + public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE + .getIotaTypeRegistry() + .byNameCodec() + .dispatch("type", Iota::getType, IotaType::codec) + .comapFlatMap( + iota -> { + if (isTooLargeToSerialize(List.of(iota), 0)) { + return DataResult.success(GarbageIota.INSTANCE); + } + return DataResult.success(iota); + }, + Function.identity() + ).orElse(GarbageIota.INSTANCE) + ); + public static final StreamCodec TYPED_STREAM_CODEC = ByteBufCodecs + .registry(HexRegistries.IOTA_TYPE) + .dispatch(Iota::getType, IotaType::streamCodec); + + + public abstract MapCodec codec(); + + public abstract StreamCodec streamCodec(); public static boolean isTooLargeToSerialize(Iterable examinee) { return isTooLargeToSerialize(examinee, 1); @@ -88,99 +62,10 @@ private static boolean isTooLargeToSerialize(Iterable examinee, int starti return totalSize >= HexIotaTypes.MAX_SERIALIZATION_TOTAL; } - /** - * This method attempts to find the type from the {@code type} key. - * See {@link IotaType#serialize(Iota)} for the storage format. - * - * @return {@code null} if it cannot get the type. - */ - @org.jetbrains.annotations.Nullable - public static IotaType getTypeFromTag(CompoundTag tag) { - if (!tag.contains(HexIotaTypes.KEY_TYPE, Tag.TAG_STRING)) { - return null; - } - var typeKey = tag.getString(HexIotaTypes.KEY_TYPE); - if (!ResourceLocation.isValidResourceLocation(typeKey)) { - return null; - } - var typeLoc = new ResourceLocation(typeKey); - return HexIotaTypes.REGISTRY.get(typeLoc); - } - - /** - * Attempt to deserialize an iota from a tag. - *
- * Iotas are saved as such: - * - * { - * "type": "hexcasting:atype", - * "data": {...} - * } - * - */ - public static Iota deserialize(CompoundTag tag, ServerLevel world) { - var type = getTypeFromTag(tag); - if (type == null) { - return new GarbageIota(); - } - var data = tag.get(HexIotaTypes.KEY_DATA); - if (data == null) { - return new GarbageIota(); - } - Iota deserialized; - try { - deserialized = Objects.requireNonNullElse(type.deserialize(data, world), new NullIota()); - } catch (IllegalArgumentException exn) { - HexAPI.LOGGER.warn("Caught an exception deserializing an iota", exn); - deserialized = new GarbageIota(); - } - return deserialized; - } - - private static Component brokenIota() { + public static Component brokenIota() { return Component.translatable("hexcasting.spelldata.unknown") .withStyle(ChatFormatting.GRAY, ChatFormatting.ITALIC); } - public static Component getDisplay(CompoundTag tag) { - var type = getTypeFromTag(tag); - if (type == null) { - return brokenIota(); - } - var data = tag.get(HexIotaTypes.KEY_DATA); - if (data == null) { - return brokenIota(); - } - return type.display(data); - } - - public static FormattedCharSequence getDisplayWithMaxWidth(CompoundTag tag, int maxWidth, Font font) { - var type = getTypeFromTag(tag); - if (type == null) { - return brokenIota().getVisualOrderText(); - } - var data = tag.get(HexIotaTypes.KEY_DATA); - if (data == null) { - return brokenIota().getVisualOrderText(); - } - var display = type.display(data); - var splitted = font.split(display, maxWidth - font.width("...")); - if (splitted.isEmpty()) - return FormattedCharSequence.EMPTY; - else if (splitted.size() == 1) - return splitted.get(0); - else { - var first = splitted.get(0); - return FormattedCharSequence.fromPair(first, - Component.literal("...").withStyle(ChatFormatting.GRAY).getVisualOrderText()); - } - } - - public static int getColor(CompoundTag tag) { - var type = getTypeFromTag(tag); - if (type == null) { - return HexUtils.ERROR_COLOR; - } - return type.color(); - } + public abstract int color(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java index d3eb9455bf..ab41d887c4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java @@ -1,18 +1,15 @@ package at.petrak.hexcasting.api.casting.iota; import at.petrak.hexcasting.api.casting.SpellList; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.server.level.ServerLevel; +import net.minecraft.network.codec.StreamCodec; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; import java.util.List; import static java.lang.Math.max; @@ -21,11 +18,13 @@ * This is a wrapper for {@link SpellList}. */ public class ListIota extends Iota { + private SpellList list; private final int depth; private final int size; public ListIota(@NotNull SpellList list) { - super(HexIotaTypes.LIST, list); + super(() -> HexIotaTypes.LIST); + this.list = list; int maxChildDepth = 0; int totalSize = 1; for (Iota iota : list) { @@ -41,7 +40,7 @@ public ListIota(@NotNull List list) { } public SpellList getList() { - return (SpellList) this.payload; + return list; } @Override @@ -77,15 +76,6 @@ public boolean toleratesOther(Iota that) { } } - @Override - public @NotNull Tag serialize() { - var out = new ListTag(); - for (var subdatum : this.getList()) { - out.add(IotaType.serialize(subdatum)); - } - return out; - } - @Override public @Nullable Iterable subIotas() { return this.getList(); @@ -101,43 +91,45 @@ public int depth() { return depth; } - public static IotaType TYPE = new IotaType<>() { - @Nullable - @Override - public ListIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - var listTag = HexUtils.downcast(tag, ListTag.TYPE); - var out = new ArrayList(listTag.size()); - - for (var sub : listTag) { - var csub = HexUtils.downcast(sub, CompoundTag.TYPE); - var subiota = IotaType.deserialize(csub, world); - if (subiota == null) { - return null; - } - out.add(subiota); + @Override + public int hashCode() { + return list.hashCode(); + } + + @Override + public Component display() { + var out = Component.empty(); + + for (int i = 0; i < list.size(); i++) { + var sub = list.getAt(i); + + out.append(sub.display()); + + // only add a comma between 2 non-patterns (commas don't look good with Inline patterns) + // TODO: maybe add a config? maybe add a method on IotaType to allow it to opt out of commas + if (i < list.size() - 1 && (sub.type != PatternIota.TYPE + || list.getAt(i + 1).type != PatternIota.TYPE)) { + out.append(", "); } + } + return Component.translatable("hexcasting.tooltip.list_contents", out).withStyle(ChatFormatting.DARK_PURPLE); + } - return new ListIota(out); + public static IotaType TYPE = new IotaType<>() { + public static final MapCodec CODEC = SpellList.getCODEC() + .xmap(ListIota::new, ListIota::getList) + .fieldOf("list"); + public static final StreamCodec STREAM_CODEC = + SpellList.getSTREAM_CODEC().map(ListIota::new, ListIota::getList); + + @Override + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - var out = Component.empty(); - var list = HexUtils.downcast(tag, ListTag.TYPE); - for (int i = 0; i < list.size(); i++) { - Tag sub = list.get(i); - var csub = HexUtils.downcast(sub, CompoundTag.TYPE); - - out.append(IotaType.getDisplay(csub)); - - // only add a comma between 2 non-patterns (commas don't look good with Inline patterns) - // TODO: maybe add a config? maybe add a method on IotaType to allow it to opt out of commas - if (i < list.size() - 1 && (IotaType.getTypeFromTag(csub) != PatternIota.TYPE - || IotaType.getTypeFromTag(HexUtils.downcast(list.get(i+1), CompoundTag.TYPE)) != PatternIota.TYPE)) { - out.append(", "); - } - } - return Component.translatable("hexcasting.tooltip.list_contents", out).withStyle(ChatFormatting.DARK_PURPLE); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java index 525e6b22a9..73bde5b4fb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java @@ -1,10 +1,13 @@ package at.petrak.hexcasting.api.casting.iota; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -13,15 +16,14 @@ * An iota with no data associated with it. */ public class NullIota extends Iota { + public static final NullIota INSTANCE = new NullIota(); private static final Object NULL_SUBSTITUTE = new Object(); public static final Component DISPLAY = Component.translatable("hexcasting.tooltip.null_iota").withStyle(ChatFormatting.GRAY); - public NullIota() { - // We have to pass *something* here, but there's nothing that actually needs to go there, - // so we just do this i guess - super(HexIotaTypes.NULL, NULL_SUBSTITUTE); + private NullIota() { + super(() -> HexIotaTypes.NULL); } @Override @@ -35,20 +37,28 @@ public boolean toleratesOther(Iota that) { } @Override - public @NotNull Tag serialize() { - return new CompoundTag(); + public int hashCode() { + return NULL_SUBSTITUTE.hashCode(); + } + + @Override + public Component display() { + return DISPLAY; } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = MapCodec.unit(NullIota.INSTANCE); + public static final StreamCodec STREAM_CODEC = + StreamCodec.unit(NullIota.INSTANCE); + @Override - public NullIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return new NullIota(); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return DISPLAY; + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java index b86e8541ce..91fa4fe2f2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java @@ -21,11 +21,16 @@ import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.interop.inline.InlinePatternData; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.NotNull; @@ -38,16 +43,15 @@ import static at.petrak.hexcasting.api.utils.HexUtils.isOfTag; public class PatternIota extends Iota { + private HexPattern value; + public PatternIota(@NotNull HexPattern pattern) { - super(HexIotaTypes.PATTERN, pattern); + super(() -> HexIotaTypes.PATTERN); + this.value = pattern; } public HexPattern getPattern() { - return (HexPattern) this.payload; - } - - protected PatternIota(@NotNull IotaType type, @NotNull Object payload) { - super(type, payload); + return value; } @Override @@ -62,11 +66,6 @@ public boolean toleratesOther(Iota that) { && this.getPattern().getAngles().equals(piota.getPattern().getAngles()); } - @Override - public @NotNull Tag serialize() { - return this.getPattern().serializeToNBT(); - } - @Override public @NotNull CastResult execute(CastingVM vm, ServerLevel world, SpellContinuation continuation) { Supplier<@Nullable Component> castedName = () -> null; @@ -140,15 +139,31 @@ public boolean executable() { return true; } + @Override + public int hashCode() { + return value.hashCode(); + } + + @Override + public Component display() { + return PatternIota.display(getPattern()); + } + public static IotaType TYPE = new IotaType<>() { + public static final MapCodec CODEC = HexPattern.CODEC + .xmap(PatternIota::new, PatternIota::getPattern) + .fieldOf("value"); + public static final StreamCodec STREAM_CODEC = + HexPattern.STREAM_CODEC.map(PatternIota::new, PatternIota::getPattern); + @Override - public PatternIota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return PatternIota.deserialize(tag); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return PatternIota.display(PatternIota.deserialize(tag).getPattern()); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override @@ -157,12 +172,6 @@ public int color() { } }; - public static PatternIota deserialize(Tag tag) throws IllegalArgumentException { - var patTag = HexUtils.downcast(tag, CompoundTag.TYPE); - HexPattern pat = HexPattern.fromNBT(patTag); - return new PatternIota(pat); - } - public static Component display(HexPattern pat) { Component text = (new InlinePatternData(pat)).asText(true); return text.copy().withStyle(text.getStyle().applyTo(Style.EMPTY.withColor(ChatFormatting.WHITE))); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java index 9d9d7fbf67..8836869fce 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java @@ -2,27 +2,35 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.LongArrayTag; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.List; + public class Vec3Iota extends Iota { + private Vec3 value; public Vec3Iota(@NotNull Vec3 datum) { - super(HexIotaTypes.VEC3, datum); + super(() -> HexIotaTypes.VEC3); + this.value = datum; } public Vec3 getVec3() { - var v = (Vec3) this.payload; return new Vec3( - HexUtils.fixNAN(v.x), - HexUtils.fixNAN(v.y), - HexUtils.fixNAN(v.z) + HexUtils.fixNAN(value.x), + HexUtils.fixNAN(value.y), + HexUtils.fixNAN(value.z) ); } @@ -40,20 +48,36 @@ public boolean toleratesOther(Iota that) { } @Override - public @NotNull Tag serialize() { - return HexUtils.serializeToNBT(this.getVec3()); + public int hashCode() { + return value.hashCode(); + } + + @Override + public Component display() { + return Vec3Iota.display(getVec3()); } public static IotaType TYPE = new IotaType<>() { - @Nullable + public static final MapCodec CODEC = Vec3.CODEC + .xmap(Vec3Iota::new, Vec3Iota::getVec3) + .fieldOf("value"); + // TODO replace with Vec3 codec if it will appear somewhere + public static final StreamCodec STREAM_CODEC = + ByteBufCodecs.DOUBLE.apply(ByteBufCodecs.list()) + .map( + l -> new Vec3Iota(new Vec3(l.get(0), l.get(1), l.get(2))), + iota -> List.of(iota.getVec3().x, iota.getVec3().y, iota.getVec3().z) + ) + .mapStream(b -> b); + @Override - public Vec3Iota deserialize(Tag tag, ServerLevel world) throws IllegalArgumentException { - return Vec3Iota.deserialize(tag); + public MapCodec codec() { + return CODEC; } @Override - public Component display(Tag tag) { - return Vec3Iota.display(Vec3Iota.deserialize(tag).getVec3()); + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override @@ -62,16 +86,6 @@ public int color() { } }; - public static Vec3Iota deserialize(Tag tag) throws IllegalArgumentException { - Vec3 vec; - if (tag.getType() == LongArrayTag.TYPE) { - var lat = HexUtils.downcast(tag, LongArrayTag.TYPE); - vec = HexUtils.vecFromNBT(lat.getAsLongArray()); - } else - vec = HexUtils.vecFromNBT(HexUtils.downcast(tag, CompoundTag.TYPE)); - return new Vec3Iota(vec); - } - public static Component display(double x, double y, double z) { return Component.literal(String.format("(%.2f, %.2f, %.2f)", x, y, z)) .withStyle(ChatFormatting.RED); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt index 03f4ca5a56..b11ba185a0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt @@ -2,6 +2,10 @@ package at.petrak.hexcasting.api.casting.math import at.petrak.hexcasting.api.utils.getSafe import com.mojang.serialization.Codec +import io.netty.buffer.ByteBuf +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec enum class HexDir { NORTH_EAST, EAST, SOUTH_EAST, SOUTH_WEST, WEST, NORTH_WEST; @@ -31,6 +35,10 @@ enum class HexDir { HexDir::fromString, HexDir::name ) + val STREAM_CODEC: StreamCodec = ByteBufCodecs.STRING_UTF8.map( + HexDir::fromString, + HexDir::name + ) @JvmStatic fun fromString(key: String): HexDir { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt index 001cfdeab4..9dea87f1bc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt @@ -8,6 +8,9 @@ import com.mojang.serialization.Codec import com.mojang.serialization.codecs.RecordCodecBuilder import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.Tag +import net.minecraft.network.RegistryFriendlyByteBuf +import net.minecraft.network.codec.ByteBufCodecs +import net.minecraft.network.codec.StreamCodec import net.minecraft.world.phys.Vec2 /** @@ -73,12 +76,6 @@ data class HexPattern(val startDir: HexDir, val angles: MutableList = fun finalDir(): HexDir = this.angles.fold(this.startDir) { acc, angle -> acc * angle } - - fun serializeToNBT() = NBTBuilder { - TAG_START_DIR %= byte(startDir.ordinal) - TAG_ANGLES %= byteArray(angles.map(HexAngle::ordinal)) - } - // Terrible shorthand method for easy matching fun anglesSignature(): String { return buildString { @@ -126,28 +123,19 @@ data class HexPattern(val startDir: HexDir, val angles: MutableList = } companion object { - const val TAG_START_DIR = "start_dir" - const val TAG_ANGLES = "angles" - @JvmField val CODEC: Codec = RecordCodecBuilder.create({instance -> instance.group( - Codec.STRING.fieldOf(TAG_START_DIR).forGetter(HexPattern::anglesSignature), - HexDir.CODEC.fieldOf(TAG_ANGLES).forGetter(HexPattern::startDir) + Codec.STRING.fieldOf("start_dir").forGetter(HexPattern::anglesSignature), + HexDir.CODEC.fieldOf("angles").forGetter(HexPattern::startDir) ).apply(instance, HexPattern::fromAngles) }) - @JvmStatic - fun isPattern(tag: CompoundTag): Boolean { - return tag.contains(TAG_START_DIR, Tag.TAG_ANY_NUMERIC.toInt()) - && tag.contains(TAG_ANGLES, Tag.TAG_BYTE_ARRAY.toInt()) - } - - @JvmStatic - fun fromNBT(tag: CompoundTag): HexPattern { - val startDir = HexDir.values().getSafe(tag.getByte(TAG_START_DIR)) - val angles = tag.getByteArray(TAG_ANGLES).map(HexAngle.values()::getSafe) - return HexPattern(startDir, angles.toMutableList()) - } + @JvmField + val STREAM_CODEC: StreamCodec = StreamCodec.composite( + ByteBufCodecs.STRING_UTF8, HexPattern::anglesSignature, + HexDir.STREAM_CODEC, HexPattern::startDir, + HexPattern::fromAngles + ) @JvmStatic fun fromAngles(signature: String, startDir: HexDir): HexPattern { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapAlreadyBrainswept.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapAlreadyBrainswept.kt index d076dd36e2..fcfe86b2d7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapAlreadyBrainswept.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapAlreadyBrainswept.kt @@ -5,7 +5,6 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.common.lib.HexDamageTypes -import at.petrak.hexcasting.mixin.accessor.AccessorDamageSource import net.minecraft.world.entity.Mob import net.minecraft.world.item.DyeColor @@ -14,11 +13,7 @@ class MishapAlreadyBrainswept(val mob: Mob) : Mishap() { dyeColor(DyeColor.GREEN) override fun execute(ctx: CastingEnvironment, errorCtx: Context, stack: MutableList) { - trulyHurt( - mob, - (mob.damageSources() as AccessorDamageSource).`hex$source`(HexDamageTypes.OVERCAST, ctx.castingEntity)!!, - mob.health - ) + mob.hurt(mob.damageSources().source(HexDamageTypes.OVERCAST, ctx.castingEntity), mob.health) } override fun particleSpray(ctx: CastingEnvironment) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBrainsweep.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBrainsweep.kt index 7054802563..601273fbb0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBrainsweep.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBrainsweep.kt @@ -5,7 +5,6 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.common.lib.HexDamageTypes -import at.petrak.hexcasting.mixin.accessor.AccessorDamageSource import net.minecraft.core.BlockPos import net.minecraft.world.entity.Mob import net.minecraft.world.item.DyeColor @@ -16,11 +15,7 @@ class MishapBadBrainsweep(val mob: Mob, val pos: BlockPos) : Mishap() { dyeColor(DyeColor.GREEN) override fun execute(ctx: CastingEnvironment, errorCtx: Context, stack: MutableList) { - trulyHurt( - mob, - (mob.damageSources() as AccessorDamageSource).`hex$source`(HexDamageTypes.OVERCAST, ctx.castingEntity)!!, - 1f - ) + trulyHurt(mob, mob.damageSources().source(HexDamageTypes.OVERCAST, ctx.castingEntity), 1f) } override fun particleSpray(ctx: CastingEnvironment): ParticleSpray { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt index a9334f0137..f176e62769 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt @@ -19,7 +19,7 @@ class MishapBadEntity(val entity: Entity, val wanted: Component) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = - error("bad_entity", wanted, entity.displayName!!.plainCopy().aqua) + error("bad_entity", wanted, entity.displayName?.plainCopy()?.aqua ?: entity.type.description.plainCopy().aqua) companion object { @JvmStatic diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt index 98050ee244..b31a0c84f3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt @@ -17,7 +17,7 @@ class MishapDivideByZero(val operand1: Component, val operand2: Component, val s dyeColor(DyeColor.RED) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota()) + stack.add(GarbageIota.INSTANCE) env.mishapEnvironment.damage(0.5f) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt index d486bff74d..5f196d376f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt @@ -3,6 +3,7 @@ package at.petrak.hexcasting.api.casting.mishaps import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment +import at.petrak.hexcasting.api.utils.aqua import net.minecraft.network.chat.Component import net.minecraft.world.entity.Entity import net.minecraft.world.item.DyeColor @@ -16,5 +17,5 @@ class MishapEntityTooFarAway(val entity: Entity) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component = - error("entity_too_far", entity.displayName!!) + error("entity_too_far", entity.displayName?.plainCopy() ?: entity.type.description) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt new file mode 100644 index 0000000000..9ec7232fb9 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt @@ -0,0 +1,20 @@ +package at.petrak.hexcasting.api.casting.mishaps + +import at.petrak.hexcasting.api.casting.eval.CastingEnvironment +import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.pigment.FrozenPigment +import at.petrak.hexcasting.api.utils.aqua +import net.minecraft.ChatFormatting +import net.minecraft.network.chat.Component +import net.minecraft.world.item.DyeColor +import java.util.* + +class MishapEntityUnavailable(val entityId: UUID, val entityName: Component?) : Mishap() { + override fun accentColor(ctx: CastingEnvironment, errorCtx: Context): FrozenPigment = + dyeColor(DyeColor.BROWN) + + override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) {} + + override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = + error("unavailable_entity", entityName?.plainCopy()?.aqua ?: Component.literal(entityId.toString()).withStyle(ChatFormatting.AQUA)) +} diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt index 1a027a1a77..ca2622947a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt @@ -4,6 +4,8 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.api.utils.aqua +import net.minecraft.core.registries.Registries +import net.minecraft.network.chat.Component import net.minecraft.world.entity.Entity import net.minecraft.world.item.DyeColor @@ -16,5 +18,5 @@ class MishapImmuneEntity(val entity: Entity) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = - error("immune_entity", entity.displayName!!.plainCopy().aqua) + error("immune_entity", entity.displayName?.plainCopy()?.aqua ?: entity.type.description.plainCopy().aqua) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt index 17e71d6044..3645a95ab7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt @@ -20,7 +20,7 @@ class MishapInvalidIota( dyeColor(DyeColor.GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack[stack.size - 1 - reverseIdx] = GarbageIota(); + stack[stack.size - 1 - reverseIdx] = GarbageIota.INSTANCE; } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt index a16c083f4c..187ecd8dac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt @@ -18,7 +18,7 @@ class MishapInvalidOperatorArgs(val perpetrators: List) : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { for (i in perpetrators.indices) { - stack[stack.size - 1 - i] = GarbageIota() + stack[stack.size - 1 - i] = GarbageIota.INSTANCE } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt index 20fbd31fb5..e52b71a2cc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt @@ -14,7 +14,7 @@ class MishapInvalidPattern : Mishap() { override fun resolutionType(ctx: CastingEnvironment) = ResolvedPatternType.INVALID override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota()) + stack.add(GarbageIota.INSTANCE) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt index 2d0e721838..c13b88af58 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt @@ -13,7 +13,7 @@ class MishapLocationInWrongDimension(val properDimension: ResourceLocation) : Mi dyeColor(DyeColor.MAGENTA) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota()) + stack.add(GarbageIota.INSTANCE) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt index 646f42c927..beed34a8de 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt @@ -11,7 +11,7 @@ class MishapNotEnoughArgs(val expected: Int, val got: Int) : Mishap() { dyeColor(DyeColor.LIGHT_GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - repeat(expected - got) { stack.add(GarbageIota()) } + repeat(expected - got) { stack.add(GarbageIota.INSTANCE) } } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt index e6ea0326ed..629ed69189 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt @@ -5,6 +5,7 @@ import at.petrak.hexcasting.api.casting.iota.EntityIota import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.pigment.FrozenPigment +import net.minecraft.server.level.ServerLevel import net.minecraft.world.entity.player.Player import net.minecraft.world.item.DyeColor @@ -33,14 +34,19 @@ class MishapOthersName(val confidant: Player) : Mishap() { * If `caster` is non-null, it will ignore that when checking. */ @JvmStatic - fun getTrueNameFromDatum(datum: Iota, caster: Player?): Player? { + fun getTrueNameFromDatum(level: ServerLevel, datum: Iota, caster: Player?): Player? { val poolToSearch = ArrayDeque() poolToSearch.addLast(datum) while (poolToSearch.isNotEmpty()) { val datumToCheck = poolToSearch.removeFirst() - if (datumToCheck is EntityIota && datumToCheck.entity is Player && datumToCheck.entity != caster) - return datumToCheck.entity as Player + + if(datumToCheck is EntityIota) { + var ent = datumToCheck.getOrFindEntity(level) + if(ent is Player && ent != caster) + return ent + } + val datumSubIotas = datumToCheck.subIotas() if (datumSubIotas != null) poolToSearch.addAll(datumSubIotas) @@ -50,8 +56,8 @@ class MishapOthersName(val confidant: Player) : Mishap() { } @JvmStatic - fun getTrueNameFromArgs(datums: List, caster: Player?): Player? { - return datums.firstNotNullOfOrNull { getTrueNameFromDatum(it, caster) } + fun getTrueNameFromArgs(level: ServerLevel, datums: List, caster: Player?): Player? { + return datums.firstNotNullOfOrNull { getTrueNameFromDatum(level, it, caster) } } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt index 571e39bcd9..87dc91a010 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt @@ -16,7 +16,7 @@ class MishapStackSize() : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { stack.clear() - stack.add(GarbageIota()) + stack.add(GarbageIota.INSTANCE) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt index ba8fe81034..b1615fe604 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt @@ -4,22 +4,20 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.mishaps.Mishap import at.petrak.hexcasting.api.pigment.FrozenPigment -import net.minecraft.resources.ResourceLocation +import net.minecraft.core.component.DataComponents import net.minecraft.server.level.ServerPlayer import net.minecraft.world.entity.player.Player import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack +import net.minecraft.world.item.enchantment.EnchantmentHelper +import net.minecraft.world.item.enchantment.Enchantments class MishapNoSpellCircle : Mishap() { override fun accentColor(ctx: CastingEnvironment, errorCtx: Context): FrozenPigment = dyeColor(DyeColor.LIGHT_BLUE) // FIXME: make me work with any entity and not just players - private inline fun dropAll( - player: Player, - stacks: MutableList, - filter: (ItemStack) -> Boolean = { true } - ) { + private inline fun dropAll(player: Player, stacks: MutableList, filter: (ItemStack) -> Boolean = { true }) { for (index in stacks.indices) { val item = stacks[index] if (!item.isEmpty && filter(item)) { @@ -36,7 +34,7 @@ class MishapNoSpellCircle : Mishap() { dropAll(caster, caster.inventory.items) dropAll(caster, caster.inventory.offhand) dropAll(caster, caster.inventory.armor) { - it.enchantments.keySet().any { ench -> ench.`is`(ResourceLocation.parse("minecraft:binding_curse")) } + it.get(DataComponents.ENCHANTMENTS)?.keySet()?.any { e -> e.`is`(Enchantments.BINDING_CURSE) } != true } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt b/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt index 249adc092b..3d825e44df 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt @@ -58,4 +58,9 @@ class ClientCastingStack { patterns.removeAll(toRemove) toRemove.clear() } + + fun interface Provider { + + fun provide(): ClientCastingStack + } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java index c312383129..db7e60859c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java @@ -5,6 +5,7 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.ClientTickCounter; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; @@ -26,30 +27,15 @@ * and the appropriate cap/CC will be attached. */ public interface IotaHolderItem { - /** - * If this key is set on the item, we ignore the rest of the item and render this as if it were of the - * {@link at.petrak.hexcasting.api.casting.iota.IotaType IotaType} given by the resource location. - *

- * This is not useful to the player at all. - */ - String TAG_OVERRIDE_VISUALLY = "VisualOverride"; - - @Nullable - CompoundTag readIotaTag(ItemStack stack); @Nullable - default Iota readIota(ItemStack stack, ServerLevel world) { - if (!(stack.getItem() instanceof IotaHolderItem dh)) { + default Iota readIota(ItemStack stack) { + if (!(stack.getItem() instanceof IotaHolderItem)) { // this should be checked via mishap beforehand throw new IllegalArgumentException("stack's item must be an IotaHolderItem but was " + stack.getItem()); } - var tag = dh.readIotaTag(stack); - if (tag != null) { - return IotaType.deserialize(tag, world); - } else { - return null; - } + return stack.get(HexDataComponents.IOTA); } /** @@ -61,28 +47,18 @@ default Iota emptyIota(ItemStack stack) { } default int getColor(ItemStack stack) { - if (NBTHelper.hasString(stack, TAG_OVERRIDE_VISUALLY)) { - var override = NBTHelper.getString(stack, TAG_OVERRIDE_VISUALLY); - - if (override != null && ResourceLocation.isValidResourceLocation(override)) { - var key = new ResourceLocation(override); - if (HexIotaTypes.REGISTRY.containsKey(key)) { - var iotaType = HexIotaTypes.REGISTRY.get(key); - if (iotaType != null) { - return iotaType.color(); - } - } - } - - return 0xFF000000 | Mth.hsvToRgb(ClientTickCounter.getTotal() * 2 % 360 / 360F, 0.75F, 1F); + var override = stack.get(HexDataComponents.VISUAL_OVERRIDE); + //noinspection OptionalAssignedToNull + if (override != null) { + return override.map(IotaType::color).orElseGet(() -> 0xFF000000 | Mth.hsvToRgb(ClientTickCounter.getTotal() * 2 % 360 / 360F, 0.75F, 1F)); } - var tag = this.readIotaTag(stack); - if (tag == null) { + var iota = this.readIota(stack); + if (iota == null) { return HexUtils.ERROR_COLOR; } - return IotaType.getColor(tag); + return iota.getType().color(); } /** @@ -102,15 +78,16 @@ default int getColor(ItemStack stack) { static void appendHoverText(IotaHolderItem self, ItemStack stack, List components, TooltipFlag flag) { - var datumTag = self.readIotaTag(stack); - if (datumTag != null) { - var cmp = IotaType.getDisplay(datumTag); + var datum = self.readIota(stack); + if (datum != null) { + var cmp = datum.display(); components.add(Component.translatable("hexcasting.spelldata.onitem", cmp)); - if (flag.isAdvanced()) { - components.add(Component.literal("").append(NbtUtils.toPrettyComponent(datumTag))); - } - } else if (NBTHelper.hasString(stack, IotaHolderItem.TAG_OVERRIDE_VISUALLY)) { + //TODO port: show NBT in advanced display + /*if (flag.isAdvanced()) { + components.add(Component.literal("").append(NbtUtils.toPrettyComponent(datum))); + }*/ + } else if (stack.has(HexDataComponents.VISUAL_OVERRIDE)) { components.add(Component.translatable("hexcasting.spelldata.onitem", Component.translatable("hexcasting.spelldata.anything").withStyle(ChatFormatting.LIGHT_PURPLE))); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java index 6bdca2d2d7..d242fe9edb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.api.item; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.world.item.ItemStack; /** @@ -10,16 +11,16 @@ * and the appropriate cap/CC will be attached. */ public interface VariantItem { - String TAG_VARIANT = "variant"; int numVariants(); default int getVariant(ItemStack stack) { - return NBTHelper.getInt(stack, TAG_VARIANT, 0); + var variant = stack.get(HexDataComponents.VARIANT); + return variant != null ? variant : 0; } default void setVariant(ItemStack stack, int variant) { - NBTHelper.putInt(stack, TAG_VARIANT, clampVariant(variant)); + stack.set(HexDataComponents.VARIANT, clampVariant(variant)); } default int clampVariant(int variant) { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java index 0bcc5a7fab..f22b1b82a2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java @@ -106,11 +106,9 @@ default Tier opBreakHarvestLevel() { // Simple extensions for resource location configs public static boolean anyMatch(List keys, ResourceLocation key) { for (String s : keys) { - if (ResourceLocation.isValidResourceLocation(s)) { - var rl = new ResourceLocation(s); - if (rl.equals(key)) { - return true; - } + var rl = ResourceLocation.tryParse(s); + if (rl != null && rl.equals(key)) { + return true; } } return false; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java index 238afae719..a9c5b2d4e7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java @@ -47,6 +47,8 @@ public static final class Blocks { public static final TagKey CHEAP_TO_BREAK_BLOCK = create("cheap_to_break_block"); + public static final TagKey HEX_UNBREAKABLE = create("hex_unbreakable"); + public static TagKey create(String name) { return TagKey.create(Registries.BLOCK, modLoc(name)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java index f5cd478e0e..b9a42d6680 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java @@ -2,8 +2,14 @@ import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.Util; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.UUIDUtil; import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.world.item.ItemStack; import java.util.UUID; @@ -16,33 +22,20 @@ * Get it once, and then query it a lot. */ public record FrozenPigment(ItemStack item, UUID owner) { - - public static final String TAG_STACK = "stack"; - public static final String TAG_OWNER = "owner"; - public static final Supplier DEFAULT = - () -> new FrozenPigment(new ItemStack(HexItems.DEFAULT_PIGMENT), Util.NIL_UUID); - - public CompoundTag serializeToNBT() { - var out = new CompoundTag(); - out.put(TAG_STACK, this.item.save(new CompoundTag())); - out.putUUID(TAG_OWNER, this.owner); - return out; - } - - public static FrozenPigment fromNBT(CompoundTag tag) { - if (tag.isEmpty()) { - return FrozenPigment.DEFAULT.get(); - } - try { - CompoundTag stackTag = tag.getCompound(TAG_STACK); - var stack = ItemStack.of(stackTag); - var uuid = tag.getUUID(TAG_OWNER); - return new FrozenPigment(stack, uuid); - } catch (NullPointerException exn) { - return FrozenPigment.DEFAULT.get(); - } - } + () -> new FrozenPigment(new ItemStack(HexItems.DEFAULT_PIGMENT), Util.NIL_UUID); + + public static Codec CODEC = RecordCodecBuilder.create(inst -> + inst.group( + ItemStack.CODEC.fieldOf("stack").forGetter(FrozenPigment::item), + UUIDUtil.CODEC.fieldOf("owner").forGetter(FrozenPigment::owner) + ).apply(inst, FrozenPigment::new)).orElseGet(FrozenPigment.DEFAULT); + //TODO port: maybe default here too somehow?.. + public static StreamCodec STREAM_CODEC = StreamCodec.composite( + ItemStack.STREAM_CODEC, FrozenPigment::item, + UUIDUtil.STREAM_CODEC, FrozenPigment::owner, + FrozenPigment::new + ); public ColorProvider getColorProvider() { return IXplatAbstractions.INSTANCE.getColorProvider(this); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/player/AltioraAbility.java b/Common/src/main/java/at/petrak/hexcasting/api/player/AltioraAbility.java index 304a02121d..b16c295711 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/player/AltioraAbility.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/player/AltioraAbility.java @@ -1,5 +1,9 @@ package at.petrak.hexcasting.api.player; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; + /** * Note that this just keeps track of state, actually giving the player the elytra ability is handled * differently per platform @@ -7,4 +11,8 @@ * @param gracePeriod so the flight isn't immediately removed because the player started on the ground */ public record AltioraAbility(int gracePeriod) { + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.VAR_INT.map( + AltioraAbility::new, + AltioraAbility::gracePeriod + ).mapStream(b -> b); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/player/Sentinel.java b/Common/src/main/java/at/petrak/hexcasting/api/player/Sentinel.java index 867b4fca34..189a88b74a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/player/Sentinel.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/player/Sentinel.java @@ -1,5 +1,10 @@ package at.petrak.hexcasting.api.player; +import at.petrak.paucal.api.PaucalCodecs; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; @@ -8,4 +13,11 @@ * A null sentinel means no sentinel */ public record Sentinel(boolean extendsRange, Vec3 position, ResourceKey dimension) { + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.BOOL, Sentinel::extendsRange, + PaucalCodecs.VEC3, Sentinel::position, + ResourceKey.streamCodec(Registries.DIMENSION), Sentinel::dimension, + Sentinel::new + ); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt index 7629783a56..a4302bd3c4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt @@ -16,6 +16,7 @@ import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation import net.minecraft.tags.TagKey import net.minecraft.world.InteractionHand +import net.minecraft.world.item.ItemStack import net.minecraft.world.phys.Vec2 import net.minecraft.world.phys.Vec3 import java.lang.ref.WeakReference @@ -43,7 +44,6 @@ fun vecFromNBT(tag: LongArray): Vec3 = if (tag.size != 3) Vec3.ZERO else Double.fromBits(tag[1]), Double.fromBits(tag[2]) ) - fun vecFromNBT(tag: CompoundTag): Vec3 { return if (!tag.contains("x") || !tag.contains("y") || !tag.contains("z")) Vec3.ZERO @@ -258,15 +258,6 @@ inline operator fun WeakValue.setValue(thisRef: Any?, property: KProperty this.value = value } -/** - * Returns an empty list if it's too complicated. - */ -fun Iterable.serializeToNBT() = - if (IotaType.isTooLargeToSerialize(this)) - ListTag() - else - ListIota(this.toList()).serialize() - fun Iterable.serializeToNBT(): ByteArrayTag { val out = ByteArray(if (this is Collection<*>) this.size else 10) for ((i, b) in this.withIndex()) { @@ -282,13 +273,6 @@ fun List.zipWithDefault(array: ByteArray, default: (idx: Int) -> Byte): L return list } -// -//// Copy the impl from forge -//fun ItemStack.serializeToNBT(): CompoundTag { -// val out = CompoundTag() -// this.save(out) -// return out -//} @Suppress("UNCHECKED_CAST") @Throws(IllegalArgumentException::class) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt index f72ee92e31..5d33a71992 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt @@ -1,7 +1,5 @@ @file:JvmName("NBTHelper") -// TODO this entire file needs to be HEAVILY refactored. also i need to understand components - package at.petrak.hexcasting.api.utils import net.minecraft.nbt.* @@ -117,12 +115,9 @@ fun CompoundTag.getList(key: String, objType: Byte): ListTag = getList(key, objT // Get-or-create -fun CompoundTag.getOrCreateCompound(key: String): CompoundTag = - getCompound(key) ?: CompoundTag().also { putCompound(key, it) } - +fun CompoundTag.getOrCreateCompound(key: String): CompoundTag = getCompound(key) ?: CompoundTag().also { putCompound(key, it) } fun CompoundTag.getOrCreateList(key: String, objType: Byte) = getOrCreateList(key, objType.toInt()) -fun CompoundTag.getOrCreateList(key: String, objType: Int): ListTag = - if (hasList(key, objType)) getList(key, objType) else ListTag().also { putList(key, it) } +fun CompoundTag.getOrCreateList(key: String, objType: Int): ListTag = if (hasList(key, objType)) getList(key, objType) else ListTag().also { putList(key, it) } // ================================================================================================================ Tag @@ -141,12 +136,10 @@ val Tag.asLongArray: LongArray val array = this.asIntArray LongArray(array.size) { array[it].toLong() } } - is ByteArrayTag -> { val array = this.asByteArray LongArray(array.size) { array[it].toLong() } } - else -> LongArray(0) } @@ -157,12 +150,10 @@ val Tag.asIntArray: IntArray val array = this.asLongArray IntArray(array.size) { array[it].toInt() } } - is ByteArrayTag -> { val array = this.asByteArray IntArray(array.size) { array[it].toInt() } } - else -> IntArray(0) } @@ -173,12 +164,10 @@ val Tag.asByteArray: ByteArray val array = this.asLongArray ByteArray(array.size) { array[it].toByte() } } - is IntArrayTag -> { val array = this.asIntArray ByteArray(array.size) { array[it].toByte() } } - else -> ByteArray(0) } @@ -187,98 +176,3 @@ val Tag.asCompound get() = this as? CompoundTag ?: CompoundTag() // asString is defined in Tag val Tag.asList get() = this as? ListTag ?: ListTag() val Tag.asUUID: UUID get() = if (this is IntArrayTag && this.size == 4) NbtUtils.loadUUID(this) else UUID(0, 0) - -// ========================================================================================================== ItemStack - -// Checks for containment - -fun ItemStack.hasNumber(key: String) = tag.hasNumber(key) -fun ItemStack.hasByte(key: String) = tag.hasByte(key) -fun ItemStack.hasShort(key: String) = tag.hasShort(key) -fun ItemStack.hasInt(key: String) = tag.hasInt(key) -fun ItemStack.hasLong(key: String) = tag.hasLong(key) -fun ItemStack.hasFloat(key: String) = tag.hasFloat(key) -fun ItemStack.hasDouble(key: String) = tag.hasDouble(key) -fun ItemStack.hasLongArray(key: String) = tag.hasLongArray(key) -fun ItemStack.hasIntArray(key: String) = tag.hasIntArray(key) -fun ItemStack.hasByteArray(key: String) = tag.hasByteArray(key) -fun ItemStack.hasCompound(key: String) = tag.hasCompound(key) -fun ItemStack.hasString(key: String) = tag.hasString(key) -fun ItemStack.hasList(key: String) = tag.hasList(key) -fun ItemStack.hasList(key: String, objType: Int) = tag.hasList(key, objType) -fun ItemStack.hasList(key: String, objType: Byte) = tag.hasList(key, objType) -fun ItemStack.hasUUID(key: String) = tag.hasUUID(key) - -@JvmName("contains") -fun ItemStack.containsTag(key: String) = tag.contains(key) - -@JvmName("contains") -fun ItemStack.containsTag(key: String, id: Byte) = tag.contains(key, id) - -@JvmName("contains") -fun ItemStack.containsTag(key: String, id: Int) = tag.contains(key, id) - -// Puts - -fun ItemStack.putBoolean(key: String, value: Boolean) = orCreateTag.putBoolean(key, value) -fun ItemStack.putByte(key: String, value: Byte) = orCreateTag.putByte(key, value) -fun ItemStack.putShort(key: String, value: Short) = orCreateTag.putShort(key, value) -fun ItemStack.putInt(key: String, value: Int) = orCreateTag.putInt(key, value) -fun ItemStack.putLong(key: String, value: Long) = orCreateTag.putLong(key, value) -fun ItemStack.putFloat(key: String, value: Float) = orCreateTag.putFloat(key, value) -fun ItemStack.putDouble(key: String, value: Double) = orCreateTag.putDouble(key, value) - -fun ItemStack.putLongArray(key: String, value: LongArray) = orCreateTag.putLongArray(key, value) -fun ItemStack.putIntArray(key: String, value: IntArray) = orCreateTag.putIntArray(key, value) -fun ItemStack.putByteArray(key: String, value: ByteArray) = orCreateTag.putByteArray(key, value) -fun ItemStack.putCompound(key: String, value: CompoundTag) = putTag(key, value) -fun ItemStack.putString(key: String, value: String) = orCreateTag.putString(key, value) -fun ItemStack.putList(key: String, value: ListTag) = putTag(key, value) -fun ItemStack.putUUID(key: String, value: UUID) = orCreateTag.putUUID(key, value) - -@JvmName("put") -fun ItemStack.putTag(key: String, value: Tag) = orCreateTag.put(key, value) - -// Remove - -fun ItemStack.remove(key: String) = removeTagKey(key) - -// Gets - -@JvmOverloads -fun ItemStack.getBoolean(key: String, defaultExpected: Boolean = false) = tag.getBoolean(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getByte(key: String, defaultExpected: Byte = 0) = tag.getByte(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getShort(key: String, defaultExpected: Short = 0) = tag.getShort(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getInt(key: String, defaultExpected: Int = 0) = tag.getInt(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getLong(key: String, defaultExpected: Long = 0) = tag.getLong(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getFloat(key: String, defaultExpected: Float = 0f) = tag.getFloat(key, defaultExpected) - -@JvmOverloads -fun ItemStack.getDouble(key: String, defaultExpected: Double = 0.0) = tag.getDouble(key, defaultExpected) - -fun ItemStack.getLongArray(key: String) = tag.getLongArray(key) -fun ItemStack.getIntArray(key: String) = tag.getIntArray(key) -fun ItemStack.getByteArray(key: String) = tag.getByteArray(key) -fun ItemStack.getCompound(key: String) = tag.getCompound(key) -fun ItemStack.getString(key: String) = tag.getString(key) -fun ItemStack.getList(key: String, objType: Int) = tag.getList(key, objType) -fun ItemStack.getUUID(key: String) = tag.getUUID(key) - -@JvmName("get") -fun ItemStack.getTag(key: String) = tag.get(key) - -// Get-or-create - -fun ItemStack.getOrCreateCompound(key: String): CompoundTag = getOrCreateTagElement(key) -fun ItemStack.getOrCreateList(key: String, objType: Byte) = orCreateTag.getOrCreateList(key, objType) -fun ItemStack.getOrCreateList(key: String, objType: Int) = orCreateTag.getOrCreateList(key, objType) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java index 14ce4e1d22..1d4967d6c7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java @@ -22,6 +22,7 @@ import at.petrak.hexcasting.common.items.storage.*; import at.petrak.hexcasting.common.lib.HexBlockEntities; import at.petrak.hexcasting.common.lib.HexBlocks; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import net.minecraft.client.color.block.BlockColor; @@ -30,7 +31,9 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelBakery; +import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.core.Registry; +import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.packs.resources.ResourceManager; @@ -56,10 +59,10 @@ public class RegisterClientStuff { public static void init() { registerSealableDataHolderOverrides(HexItems.FOCUS, - stack -> HexItems.FOCUS.readIotaTag(stack) != null, + stack -> stack.has(HexDataComponents.IOTA), ItemFocus::isSealed); registerSealableDataHolderOverrides(HexItems.SPELLBOOK, - stack -> HexItems.SPELLBOOK.readIotaTag(stack) != null, + stack -> HexItems.SPELLBOOK.readIota(stack) != null, ItemSpellbook::isSealed); registerVariantOverrides(HexItems.FOCUS, HexItems.FOCUS::getVariant); registerVariantOverrides(HexItems.SPELLBOOK, HexItems.SPELLBOOK::getVariant); @@ -69,7 +72,7 @@ public static void init() { registerVariantOverrides(HexItems.ARTIFACT, HexItems.ARTIFACT::getVariant); IClientXplatAbstractions.INSTANCE.registerItemProperty(HexItems.THOUGHT_KNOT, ItemThoughtKnot.WRITTEN_PRED, (stack, level, holder, holderID) -> { - if (NBTHelper.contains(stack, ItemThoughtKnot.TAG_DATA)) { + if (stack.has(HexDataComponents.IOTA)) { return 1; } else { return 0; @@ -134,7 +137,7 @@ public static void init() { x.registerEntityRenderer(HexEntities.WALL_SCROLL, WallScrollRenderer::new); -// for (var tex : new ResourceLocation[]{ +// for (var tex : ResourceLocation.fromNamespaceAndPath[]{ // PatternTooltipComponent.PRISTINE_BG, // PatternTooltipComponent.ANCIENT_BG, // PatternTooltipComponent.SLATE_BG @@ -166,11 +169,11 @@ public static void registerColorProviders(BiConsumer itemColorR // this gets called for particles for some irritating reason return 0xff_ffffff; } - var iotaTag = beas.getIotaTag(); - if (iotaTag == null) { + var iota = beas.getIota(); + if (iota == null) { return 0xff_ffffff; } - return IotaType.getColor(iotaTag); + return iota.getType().color(); }, HexBlocks.AKASHIC_BOOKSHELF); } @@ -192,7 +195,7 @@ private static void registerSealableDataHolderOverrides(IotaHolderItem item, Pre Predicate isSealed) { IClientXplatAbstractions.INSTANCE.registerItemProperty((Item) item, ItemFocus.OVERLAY_PRED, (stack, level, holder, holderID) -> { - if (!hasIota.test(stack) && !NBTHelper.hasString(stack, IotaHolderItem.TAG_OVERRIDE_VISUALLY)) { + if (!hasIota.test(stack) && !stack.has(HexDataComponents.VISUAL_OVERRIDE)) { return 0; } if (!isSealed.test(stack)) { @@ -209,7 +212,7 @@ private static void registerVariantOverrides(VariantItem item, Function NBTHelper.hasString(stack, ItemScroll.TAG_OP_ID) ? 1f : 0f); + (stack, level, holder, holderID) -> stack.has(HexDataComponents.ACTION) ? 1f : 0f); } private static void registerPackagedSpellOverrides(ItemPackagedHex item) { @@ -222,7 +225,7 @@ private static void registerPackagedSpellOverrides(ItemPackagedHex item) { private static void registerWandOverrides(ItemStaff item) { IClientXplatAbstractions.INSTANCE.registerItemProperty(item, ItemStaff.FUNNY_LEVEL_PREDICATE, (stack, level, holder, holderID) -> { - if (!stack.hasCustomHoverName()) { + if (!stack.has(DataComponents.CUSTOM_NAME)) { return 0; } var name = stack.getHoverName().getString().toLowerCase(Locale.ROOT); @@ -256,7 +259,7 @@ void registerBlockEntityRenderer(BlockEntityType type BlockEntityRendererProvider berp); } - public static void onModelRegister(ResourceManager recMan, Consumer extraModels) { + public static void onModelRegister(ResourceManager recMan, Consumer extraModels) { for (var type : QUENCHED_ALLAY_TYPES.entrySet()) { var blockLoc = BuiltInRegistries.BLOCK.getKey(type.getKey()); var locStart = "block/"; @@ -264,12 +267,12 @@ public static void onModelRegister(ResourceManager recMan, Consumer map) { + public static void onModelBake(ModelBakery loader, Map map) { for (var type : QUENCHED_ALLAY_TYPES.entrySet()) { var blockLoc = BuiltInRegistries.BLOCK.getKey(type.getKey()); var locStart = "block/"; @@ -278,7 +281,7 @@ public static void onModelBake(ModelBakery loader, Map(); for (int i = 0; i < BlockQuenchedAllay.VARIANTS; i++) { - var variantLoc = modLoc(locStart + blockLoc.getPath() + "_" + i); + var variantLoc = new ModelResourceLocation(modLoc(locStart + blockLoc.getPath() + "_" + i), ModelResourceLocation.STANDALONE_VARIANT); var model = map.get(variantLoc); list.add(model); } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java index d17e617cd9..9e88bcf384 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java @@ -56,42 +56,41 @@ public void render(EntityWallScroll wallScroll, float yaw, float partialTicks, P float margin = 1f / 48f; var last = ps.last(); var mat = last.pose(); - var norm = last.normal(); RenderType layer = RenderType.entityCutout(this.getTextureLocation(wallScroll)); var verts = bufSource.getBuffer(layer); // Remember: CCW // Front face - vertex(mat, norm, light, verts, 0, 0, dz, 0, 0, 0, 0, -1); - vertex(mat, norm, light, verts, 0, dy, dz, 0, 1, 0, 0, -1); - vertex(mat, norm, light, verts, dx, dy, dz, 1, 1, 0, 0, -1); - vertex(mat, norm, light, verts, dx, 0, dz, 1, 0, 0, 0, -1); + vertex(mat, last, light, verts, 0, 0, dz, 0, 0, 0, 0, -1); + vertex(mat, last, light, verts, 0, dy, dz, 0, 1, 0, 0, -1); + vertex(mat, last, light, verts, dx, dy, dz, 1, 1, 0, 0, -1); + vertex(mat, last, light, verts, dx, 0, dz, 1, 0, 0, 0, -1); // Back face - vertex(mat, norm, light, verts, 0, 0, 0, 0, 0, 0, 0, 1); - vertex(mat, norm, light, verts, dx, 0, 0, 1, 0, 0, 0, 1); - vertex(mat, norm, light, verts, dx, dy, 0, 1, 1, 0, 0, 1); - vertex(mat, norm, light, verts, 0, dy, 0, 0, 1, 0, 0, 1); + vertex(mat, last, light, verts, 0, 0, 0, 0, 0, 0, 0, 1); + vertex(mat, last, light, verts, dx, 0, 0, 1, 0, 0, 0, 1); + vertex(mat, last, light, verts, dx, dy, 0, 1, 1, 0, 0, 1); + vertex(mat, last, light, verts, 0, dy, 0, 0, 1, 0, 0, 1); // Top face - vertex(mat, norm, light, verts, 0, 0, 0, 0, 0, 0, -1, 0); - vertex(mat, norm, light, verts, 0, 0, dz, 0, margin, 0, -1, 0); - vertex(mat, norm, light, verts, dx, 0, dz, 1, margin, 0, -1, 0); - vertex(mat, norm, light, verts, dx, 0, 0, 1, 0, 0, -1, 0); + vertex(mat, last, light, verts, 0, 0, 0, 0, 0, 0, -1, 0); + vertex(mat, last, light, verts, 0, 0, dz, 0, margin, 0, -1, 0); + vertex(mat, last, light, verts, dx, 0, dz, 1, margin, 0, -1, 0); + vertex(mat, last, light, verts, dx, 0, 0, 1, 0, 0, -1, 0); // Left face - vertex(mat, norm, light, verts, 0, 0, 0, 0, 0, -1, 0, 0); - vertex(mat, norm, light, verts, 0, dy, 0, 0, 1, -1, 0, 0); - vertex(mat, norm, light, verts, 0, dy, dz, margin, 1, -1, 0, 0); - vertex(mat, norm, light, verts, 0, 0, dz, margin, 0, -1, 0, 0); + vertex(mat, last, light, verts, 0, 0, 0, 0, 0, -1, 0, 0); + vertex(mat, last, light, verts, 0, dy, 0, 0, 1, -1, 0, 0); + vertex(mat, last, light, verts, 0, dy, dz, margin, 1, -1, 0, 0); + vertex(mat, last, light, verts, 0, 0, dz, margin, 0, -1, 0, 0); // Right face - vertex(mat, norm, light, verts, dx, 0, dz, 1 - margin, 0, 1, 0, 0); - vertex(mat, norm, light, verts, dx, dy, dz, 1 - margin, 1, 1, 0, 0); - vertex(mat, norm, light, verts, dx, dy, 0, 1, 1, 1, 0, 0); - vertex(mat, norm, light, verts, dx, 0, 0, 1, 0, 1, 0, 0); + vertex(mat, last, light, verts, dx, 0, dz, 1 - margin, 0, 1, 0, 0); + vertex(mat, last, light, verts, dx, dy, dz, 1 - margin, 1, 1, 0, 0); + vertex(mat, last, light, verts, dx, dy, 0, 1, 1, 1, 0, 0); + vertex(mat, last, light, verts, dx, 0, 0, 1, 0, 1, 0, 0); // Bottom face - vertex(mat, norm, light, verts, 0, dy, dz, 0, 1 - margin, 0, 1, 0); - vertex(mat, norm, light, verts, 0, dy, 0, 0, 1, 0, 1, 0); - vertex(mat, norm, light, verts, dx, dy, 0, 1, 1, 0, 1, 0); - vertex(mat, norm, light, verts, dx, dy, dz, 1, 1 - margin, 0, 1, 0); + vertex(mat, last, light, verts, 0, dy, dz, 0, 1 - margin, 0, 1, 0); + vertex(mat, last, light, verts, 0, dy, 0, 0, 1, 0, 1, 0); + vertex(mat, last, light, verts, dx, dy, 0, 1, 1, 0, 1, 0); + vertex(mat, last, light, verts, dx, dy, dz, 1, 1 - margin, 0, 1, 0); ps.popPose(); @@ -124,13 +123,14 @@ public ResourceLocation getTextureLocation(EntityWallScroll wallScroll) { } } - private static void vertex(Matrix4f mat, Matrix3f normal, int light, VertexConsumer verts, float x, float y, + private static void vertex(Matrix4f mat, PoseStack.Pose last, int light, VertexConsumer verts, float x, float y, float z, float u, float v, float nx, float ny, float nz) { - verts.vertex(mat, x, y, z) - .color(0xffffffff) - .uv(u, v).overlayCoords(OverlayTexture.NO_OVERLAY).uv2(light) - .normal(normal, nx, ny, nz) - .endVertex(); + verts.addVertex(mat, x, y, z) + .setColor(0xffffffff) + .setUv(u, v) + .setOverlay(OverlayTexture.NO_OVERLAY) + .setLight(light) + .setNormal(last, nx, ny, nz); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt index df0c5acb60..8e3aee4052 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt @@ -3,6 +3,7 @@ package at.petrak.hexcasting.client.gui import at.petrak.hexcasting.api.casting.eval.ExecutionClientView import at.petrak.hexcasting.api.casting.eval.ResolvedPattern import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType +import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.math.HexAngle import at.petrak.hexcasting.api.casting.math.HexCoord @@ -28,7 +29,9 @@ import net.minecraft.client.gui.screens.Screen import net.minecraft.client.renderer.GameRenderer import net.minecraft.client.resources.sounds.SimpleSoundInstance import net.minecraft.client.resources.sounds.SoundInstance +import net.minecraft.core.Holder import net.minecraft.nbt.CompoundTag +import net.minecraft.nbt.NbtOps import net.minecraft.sounds.SoundSource import net.minecraft.util.FormattedCharSequence import net.minecraft.util.Mth @@ -40,7 +43,7 @@ import kotlin.math.* class GuiSpellcasting constructor( private val handOpenedWith: InteractionHand, private var patterns: MutableList, - private var cachedStack: List, + private var cachedStack: List, private var cachedRavenmind: CompoundTag?, private var parenCount: Int, ) : Screen("gui.hexcasting.spellcasting".asTranslatedComponent) { @@ -85,7 +88,7 @@ class GuiSpellcasting constructor( val mc = Minecraft.getInstance() val width = (this.width * LHS_IOTAS_ALLOCATION).toInt() this.stackDescs = - this.cachedStack.map { IotaType.getDisplayWithMaxWidth(it, width, mc.font) } + this.cachedStack.map { it.displayWithMaxWidth(width, mc.font) } .asReversed() // this.parenDescs = if (this.cachedParens.isNotEmpty()) // this.cachedParens.flatMap { HexIotaTypes.getDisplayWithMaxWidth(it, width, mc.font) } @@ -96,8 +99,8 @@ class GuiSpellcasting constructor( this.parenDescs = emptyList() this.ravenmind = this.cachedRavenmind?.let { - IotaType.getDisplayWithMaxWidth( - it, + val iota = IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, it).getOrThrow() + iota.displayWithMaxWidth( (this.width * RHS_IOTAS_ALLOCATION).toInt(), mc.font ) @@ -122,7 +125,7 @@ class GuiSpellcasting constructor( val player = minecraft.player if (player != null) { val heldItem = player.getItemInHand(handOpenedWith) - if (heldItem.isEmpty || !heldItem.`is`(HexTags.Items.STAVES) || player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0) + if (heldItem.isEmpty || !heldItem.`is`(HexTags.Items.STAVES) || player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0) closeForReal() } } @@ -291,16 +294,16 @@ class GuiSpellcasting constructor( return false } - override fun mouseScrolled(pMouseX: Double, pMouseY: Double, pDelta: Double): Boolean { - super.mouseScrolled(pMouseX, pMouseY, pDelta) + override fun mouseScrolled(mouseX: Double, mouseY: Double, scrollX: Double, scrollY: Double): Boolean { + super.mouseScrolled(mouseX, mouseY, scrollX, scrollY) val mouseHandler = Minecraft.getInstance().mouseHandler - if (mouseHandler.accumulatedScroll != 0.0 && sign(pDelta) != sign(mouseHandler.accumulatedScroll)) { + if (mouseHandler.accumulatedScroll != 0.0 && sign(scrollY) != sign(mouseHandler.accumulatedScroll)) { mouseHandler.accumulatedScroll = 0.0 } - mouseHandler.accumulatedScroll += pDelta + mouseHandler.accumulatedScroll += scrollY val accumulation: Int = mouseHandler.accumulatedScroll.toInt() if (accumulation == 0) { return true @@ -308,7 +311,7 @@ class GuiSpellcasting constructor( mouseHandler.accumulatedScroll -= accumulation.toDouble() - ShiftScrollListener.onScroll(pDelta, false) + ShiftScrollListener.onScroll(scrollY, false) return true } @@ -492,7 +495,7 @@ class GuiSpellcasting constructor( /** Distance between adjacent hex centers */ fun hexSize(): Float { - val scaleModifier = Minecraft.getInstance().player!!.getAttributeValue(HexAttributes.GRID_ZOOM) + val scaleModifier = Minecraft.getInstance().player!!.getAttributeValue(Holder.direct(HexAttributes.GRID_ZOOM)) // Originally, we allowed 32 dots across. Assuming a 1920x1080 screen this allowed like 500-odd area. // Let's be generous and give them 512. diff --git a/Common/src/main/java/at/petrak/hexcasting/client/ktxt/ClientAccessorWrappers.kt b/Common/src/main/java/at/petrak/hexcasting/client/ktxt/ClientAccessorWrappers.kt index 5863d7f050..94dc5b0d13 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/ktxt/ClientAccessorWrappers.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/ktxt/ClientAccessorWrappers.kt @@ -5,5 +5,5 @@ import at.petrak.hexcasting.mixin.accessor.client.AccessorMouseHandler import net.minecraft.client.MouseHandler var MouseHandler.accumulatedScroll: Double - get() = (this as AccessorMouseHandler).`hex$getAccumulatedScroll`() - set(value) = (this as AccessorMouseHandler).`hex$setAccumulatedScroll`(value) + get() = (this as AccessorMouseHandler).`hex$getAccumulatedScrollY`() + set(value) = (this as AccessorMouseHandler).`hex$setAccumulatedScrollY`(value) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/model/AltioraLayer.java b/Common/src/main/java/at/petrak/hexcasting/client/model/AltioraLayer.java index a354d6eba3..07cbcd3d6f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/model/AltioraLayer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/model/AltioraLayer.java @@ -43,8 +43,9 @@ public void render(PoseStack ps, MultiBufferSource buffer, int packedLight, Abst this.getParentModel().copyPropertiesTo(this.elytraModel); this.elytraModel.setupAnim(player, limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch); VertexConsumer verts = ItemRenderer.getArmorFoilBuffer( - buffer, RenderType.armorCutoutNoCull(TEX_LOC), false, true); - this.elytraModel.renderToBuffer(ps, verts, packedLight, OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, 1.0F); + buffer, RenderType.armorCutoutNoCull(TEX_LOC), true); + // TODO port: check color + this.elytraModel.renderToBuffer(ps, verts, packedLight, OverlayTexture.NO_OVERLAY, -1); ps.popPose(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/model/MyOwnArmorModelWithBlackjackAndHookers.java b/Common/src/main/java/at/petrak/hexcasting/client/model/MyOwnArmorModelWithBlackjackAndHookers.java index fc63fcdf72..0bdd3fb2d1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/model/MyOwnArmorModelWithBlackjackAndHookers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/model/MyOwnArmorModelWithBlackjackAndHookers.java @@ -52,10 +52,9 @@ public void setupAnim(LivingEntity entity, float limbSwing, float limbSwingAmoun } @Override - public void renderToBuffer(PoseStack ms, VertexConsumer buffer, int light, int overlay, float r, float g, float b - , float a) { + public void renderToBuffer(PoseStack ms, VertexConsumer buffer, int light, int overlay, int color) { setPartVisibility(slot); - super.renderToBuffer(ms, buffer, light, overlay, r, g, b, a); + super.renderToBuffer(ms, buffer, light, overlay, color); } // [VanillaCopy] HumanoidArmorLayer diff --git a/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java b/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java index 122e536e75..411b089535 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java @@ -91,7 +91,7 @@ public Particle createParticle(ConjureParticleOptions type, ClientLevel level, // https://github.com/VazkiiMods/Botania/blob/db85d778ab23f44c11181209319066d1f04a9e3d/Xplat/src/main/java/vazkii/botania/client/fx/FXWisp.java private record ConjureRenderType() implements ParticleRenderType { @Override - public void begin(BufferBuilder buf, TextureManager texMan) { + public BufferBuilder begin(Tesselator tess, TextureManager texMan) { Minecraft.getInstance().gameRenderer.lightTexture().turnOnLightLayer(); RenderSystem.depthMask(false); RenderSystem.enableBlend(); @@ -100,18 +100,8 @@ public void begin(BufferBuilder buf, TextureManager texMan) { RenderSystem.setShaderTexture(0, TextureAtlas.LOCATION_PARTICLES); var tex = texMan.getTexture(TextureAtlas.LOCATION_PARTICLES); IClientXplatAbstractions.INSTANCE.setFilterSave(tex, true, false); - buf.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.PARTICLE); RenderSystem.enableDepthTest(); - } - - @Override - public void end(Tesselator tess) { - tess.end(); - IClientXplatAbstractions.INSTANCE.restoreLastFilter( - Minecraft.getInstance().getTextureManager().getTexture(TextureAtlas.LOCATION_PARTICLES) - ); - RenderSystem.disableBlend(); - RenderSystem.depthMask(true); + return tess.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.PARTICLE); } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java index 0e96540a91..a78383bbc5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java @@ -19,6 +19,7 @@ import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.player.LocalPlayer; import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.core.Holder; import net.minecraft.locale.Language; import net.minecraft.network.chat.FormattedText; import net.minecraft.network.chat.Style; @@ -75,7 +76,6 @@ private static void renderSentinel(Sentinel sentinel, LocalPlayer owner, var tess = Tesselator.getInstance(); - var buf = tess.getBuilder(); var neo = ps.last().pose(); RenderSystem.enableBlend(); RenderSystem.setShader(GameRenderer::getRendertypeLinesShader); @@ -86,23 +86,23 @@ private static void renderSentinel(Sentinel sentinel, LocalPlayer owner, var pigment = IXplatAbstractions.INSTANCE.getPigment(owner); var colProvider = pigment.getColorProvider(); + + // Icosahedron inscribed inside the unit sphere + var buf = tess.begin(VertexFormat.Mode.LINES, DefaultVertexFormat.POSITION_COLOR_NORMAL); + BiConsumer v = (l, r) -> { int lcolor = colProvider.getColor(time, new Vec3(l[0], l[1], l[2])), rcolor = colProvider.getColor(time, new Vec3(r[0], r[1], r[2])); var normal = new Vector3f(r[0] - l[0], r[1] - l[1], r[2] - l[2]); normal.normalize(); - buf.vertex(neo, l[0], l[1], l[2]) - .color(lcolor) - .normal(ps.last().normal(), normal.x(), normal.y(), normal.z()) - .endVertex(); - buf.vertex(neo, r[0], r[1], r[2]) - .color(rcolor) - .normal(ps.last().normal(), -normal.x(), -normal.y(), -normal.z()) - .endVertex(); + buf.addVertex(neo, l[0], l[1], l[2]) + .setColor(lcolor) + .setNormal(ps.last(), normal.x(), normal.y(), normal.z()); + buf.addVertex(neo, r[0], r[1], r[2]) + .setColor(rcolor) + .setNormal(ps.last(), -normal.x(), -normal.y(), -normal.z()); }; - // Icosahedron inscribed inside the unit sphere - buf.begin(VertexFormat.Mode.LINES, DefaultVertexFormat.POSITION_COLOR_NORMAL); for (int side = 0; side <= 1; side++) { var ring = (side == 0) ? Icos.BOTTOM_RING : Icos.TOP_RING; var apex = (side == 0) ? Icos.BOTTOM : Icos.TOP; @@ -123,7 +123,7 @@ private static void renderSentinel(Sentinel sentinel, LocalPlayer owner, v.accept(Icos.TOP_RING[(i + 2) % 5], bottom); v.accept(bottom, Icos.TOP_RING[(i + 3) % 5]); } - tess.end(); + //tess.end(); RenderSystem.enableDepthTest(); RenderSystem.enableCull(); @@ -159,7 +159,7 @@ private static void tryRenderScryingLensOverlay(GuiGraphics graphics, float part return; } - if (player.getAttributeValue(HexAttributes.SCRY_SIGHT) <= 0.0 || player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0) + if (player.getAttributeValue(Holder.direct(HexAttributes.SCRY_SIGHT)) <= 0.0 || player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0) return; var hitRes = mc.hitResult; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt index 8603befcf1..73f9a3f44a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt @@ -112,10 +112,8 @@ fun drawLineSeq( val normal = Vec2(-tangent.y, tangent.x) fun color(time: Float): Int = - FastColor.ARGB32.color( - Mth.lerp(time, a1, a2).toInt(), Mth.lerp(time, r1, r2).toInt(), - Mth.lerp(time, g1, g2).toInt(), Mth.lerp(time, b1, b2).toInt() - ) + FastColor.ARGB32.color(Mth.lerp(time, a1, a2).toInt(), Mth.lerp(time, r1, r2).toInt(), + Mth.lerp(time, g1, g2).toInt(), Mth.lerp(time, b1, b2).toInt()) val color1 = color(i.toFloat() / n) val color2 = color((i + 1f) / n) @@ -222,8 +220,7 @@ fun drawPatternFromPoints( lastSegmentLenProportion: Float, seed: Double ) { - val zappyPts = - makeZappy(points, dupIndices, 10, 2.5f, 0.1f, flowIrregular, readabilityOffset, lastSegmentLenProportion, seed) + val zappyPts = makeZappy(points, dupIndices, 10, 2.5f, 0.1f, flowIrregular, readabilityOffset, lastSegmentLenProportion, seed) val nodes = if (drawLast) { points } else { @@ -356,13 +353,7 @@ fun findDupIndices(pts: Iterable): Set { * include primitive drawing code... */ fun drawSpot(mat: Matrix4f, point: Vec2, radius: Float, r: Float, g: Float, b: Float, a: Float) { - drawSpot( - mat, - point, - radius, - ARGB32.color((a * 255).toInt(), (r * 255).toInt(), (g * 255).toInt(), (b * 255).toInt()), - VCDrawHelper.Basic(1f) - ) + drawSpot(mat, point, radius, ARGB32.color((a*255).toInt(), (r*255).toInt(), (g*255).toInt(), (b*255).toInt()), VCDrawHelper.Basic(1f)) } fun drawSpot(mat: Matrix4f, point: Vec2, radius: Float, color: Int, vcHelper: VCDrawHelper) { @@ -465,5 +456,5 @@ fun renderQuad( .setColor(color) buf.addVertex(mat, x + w, y, 0f) .setColor(color) - buf.buildOrThrow() + // TODO port: test rendering works } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java b/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java index 32aed05c7a..7aac8fe1af 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java @@ -61,9 +61,9 @@ public static void addScryingLensStuff() { ScryingLensOverlayRegistry.addDisplayer(HexBlocks.AKASHIC_BOOKSHELF, (lines, state, pos, observer, world, direction) -> { if (world.getBlockEntity(pos) instanceof BlockEntityAkashicBookshelf tile) { - var iotaTag = tile.getIotaTag(); - if (iotaTag != null) { - var display = IotaType.getDisplay(iotaTag); + var iota = tile.getIota(); + if (iota != null) { + var display = iota.display(); lines.add(new Pair<>(new ItemStack(Items.BOOK), display)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt index 5076ad45b3..5fa673b252 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt @@ -18,13 +18,11 @@ import net.minecraft.world.phys.Vec3 import org.joml.Matrix4f -// TODO sam you're going to need to fix this, i have no idea what is going on here interface VCDrawHelper { fun vcSetupAndSupply(vertMode: VertexFormat.Mode): VertexConsumer fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, matrix: Matrix4f) { - vertex(vc, color, pos, Vec2(0f, 0f), matrix) + vertex(vc, color, pos, Vec2(0f,0f), matrix) } - fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, uv: Vec2, matrix: Matrix4f) fun vcEndDrawer(vc: VertexConsumer) @@ -35,15 +33,15 @@ interface VCDrawHelper { val WHITE: ResourceLocation = HexAPI.modLoc("textures/entity/white.png") @JvmStatic - fun getHelper(worldlyBits: WorldlyBits?, ps: PoseStack, z: Float, texture: ResourceLocation): VCDrawHelper { - if (worldlyBits != null) { + fun getHelper(worldlyBits: WorldlyBits?, ps: PoseStack, z: Float, texture: ResourceLocation) : VCDrawHelper { + if(worldlyBits != null){ return Worldly(worldlyBits, ps, z, texture) } return Basic(z, texture) } @JvmStatic - fun getHelper(worldlyBits: WorldlyBits?, ps: PoseStack, z: Float): VCDrawHelper { + fun getHelper(worldlyBits: WorldlyBits?, ps: PoseStack, z: Float) : VCDrawHelper { return getHelper(worldlyBits, ps, z, WHITE) } } @@ -53,32 +51,27 @@ interface VCDrawHelper { override fun vcSetupAndSupply(vertMode: VertexFormat.Mode): VertexConsumer { val tess = Tesselator.getInstance() val buf = tess.begin(vertMode, DefaultVertexFormat.POSITION_TEX_COLOR) - RenderSystem.setShader(GameRenderer::getPositionTexColorShader); + RenderSystem.setShader(GameRenderer::getPositionTexColorShader) RenderSystem.disableCull() RenderSystem.enableDepthTest() RenderSystem.enableBlend() - RenderSystem.blendFunc( - GlStateManager.SourceFactor.SRC_ALPHA, - GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA - ) + RenderSystem.blendFunc(GlStateManager.SourceFactor.SRC_ALPHA, + GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA) RenderSystem.setShaderTexture(0, texture) return buf } - - override fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, uv: Vec2, matrix: Matrix4f) { - vc.vertex(matrix, pos.x, pos.y, z).color(color).uv(uv.x, uv.y).endVertex() + override fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, uv: Vec2, matrix: Matrix4f){ + vc.addVertex(matrix, pos.x, pos.y, z).setColor(color).setUv(uv.x, uv.y) } - override fun vcEndDrawer(vc: VertexConsumer) { - Tesselator.getInstance().end() + if(vc is BufferBuilder) + BufferUploader.drawWithShader(vc.buildOrThrow()) } } - class Worldly(val worldlyBits: WorldlyBits, val ps: PoseStack, val z: Float, val texture: ResourceLocation) : - VCDrawHelper { + class Worldly(val worldlyBits: WorldlyBits, val ps: PoseStack, val z: Float, val texture: ResourceLocation) : VCDrawHelper { - var lastVertMode: VertexFormat.Mode? = - null // i guess this assumes that the vcHelper is only used once at a time? maybe reconsider that + var lastVertMode: VertexFormat.Mode ?= null // i guess this assumes that the vcHelper is only used once at a time? maybe reconsider that override fun vcSetupAndSupply(vertMode: VertexFormat.Mode): VertexConsumer { val provider = worldlyBits.provider @@ -87,57 +80,53 @@ interface VCDrawHelper { provider.endBatch() } lastVertMode = vertMode - val buf = Tesselator.getInstance().builder - if (vertMode == VertexFormat.Mode.QUADS) { + val tess = Tesselator.getInstance() + if(vertMode == VertexFormat.Mode.QUADS){ val layer = RenderType.entityTranslucentCull(texture) layer.setupRenderState() if (provider == null) { - buf.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.NEW_ENTITY) + val buf = tess.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.NEW_ENTITY) RenderSystem.setShader { GameRenderer.getRendertypeEntityTranslucentCullShader() } return buf } else { return provider.getBuffer(layer) } } - buf.begin(vertMode, DefaultVertexFormat.NEW_ENTITY) + val buf = tess.begin( vertMode, DefaultVertexFormat.NEW_ENTITY ) // Generally this would be handled by a RenderLayer, but that doesn't seem to actually work here,, RenderSystem.setShaderTexture(0, texture) RenderSystem.enableDepthTest() RenderSystem.disableCull() Minecraft.getInstance().gameRenderer.lightTexture().turnOnLightLayer() RenderSystem.enableBlend() - RenderSystem.blendFuncSeparate( - GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, - GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA - ) + RenderSystem.blendFuncSeparate( GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, + GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA ) RenderSystem.setShaderColor(1f, 1f, 1f, 1f); if (Minecraft.useShaderTransparency()) { Minecraft.getInstance().levelRenderer.translucentTarget!!.bindWrite(false) } - RenderSystem.setShader(GameRenderer::getRendertypeEntityTranslucentCullShader) + RenderSystem.setShader( GameRenderer::getRendertypeEntityTranslucentCullShader ) return buf } - override fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, uv: Vec2, matrix: Matrix4f) { - val nv = worldlyBits.normal ?: Vec3(1.0, 1.0, 1.0) - vc.vertex(matrix, pos.x, pos.y, z) - .color(color) - .uv(uv.x, uv.y) - .overlayCoords(OverlayTexture.NO_OVERLAY) - .uv2(worldlyBits.light ?: LightTexture.FULL_BRIGHT) - .normal(ps.last().normal(), nv.x.toFloat(), nv.y.toFloat(), nv.z.toFloat()) - - vc.endVertex() + override fun vertex(vc: VertexConsumer, color: Int, pos: Vec2, uv: Vec2, matrix: Matrix4f){ + val nv = worldlyBits.normal?: Vec3(1.0, 1.0, 1.0) + vc.addVertex(matrix, pos.x, pos.y, z) + .setColor(color) + .setUv(uv.x, uv.y) + .setOverlay(OverlayTexture.NO_OVERLAY) + .setLight(worldlyBits.light?: LightTexture.FULL_BRIGHT ) + .setNormal(ps.last(), nv.x.toFloat(), nv.y.toFloat(), nv.z.toFloat()) } - - override fun vcEndDrawer(vc: VertexConsumer) { - if (lastVertMode == VertexFormat.Mode.QUADS) { - if (provider == null) { + override fun vcEndDrawer(vc: VertexConsumer){ + if(lastVertMode == VertexFormat.Mode.QUADS){ + if (provider == null && vc is BufferBuilder) { val layer = RenderType.entityTranslucentCull(texture) - layer.end(Tesselator.getInstance().builder, VertexSorting.ORTHOGRAPHIC_Z) + layer.draw(vc.buildOrThrow()) //TODO port: , VertexSorting.ORTHOGRAPHIC_Z } } else { - Tesselator.getInstance().end() + if(vc is BufferBuilder) + BufferUploader.drawWithShader(vc.buildOrThrow()) Minecraft.getInstance().gameRenderer.lightTexture().turnOffLightLayer() RenderSystem.disableBlend() RenderSystem.defaultBlendFunc() diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index 68c00d5d92..b1da11a2a9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -140,7 +140,7 @@ public static void renderPattern(HexPattern pattern, PatternSettings patSets, Pa PoseStack noNormalInv = new PoseStack(); noNormalInv.scale(1, 1, -1); - ps.mulPoseMatrix(noNormalInv.last().pose()); + ps.mulPose(noNormalInv.last().pose()); PatternRenderer.renderPattern(pattern, ps, new PatternRenderer.WorldlyBits(bufSource, light, normal), patSets, patColors, seed, blockSize * 512); diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java index 15f89ad049..0d107bcebd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java @@ -42,7 +42,7 @@ public void render(BlockEntityQuenchedAllay blockEntity, float partialTick, Pose // Forge fixes BEs rendering offscreen; Fabric doesn't! // So we do a special check on Fabric only var pos = blockEntity.getBlockPos(); - var aabb = new AABB(pos.offset(-1, 0, -1), pos.offset(1, 1, 1)); + var aabb = new AABB(pos.offset(-1, 0, -1).getCenter(), pos.offset(1, 1, 1).getCenter()); if (IClientXplatAbstractions.INSTANCE.fabricAdditionalQuenchFrustumCheck(aabb)) { doRender((BlockQuenchedAllay) blockEntity.getBlockState().getBlock(), this.ctx.getBlockRenderDispatcher(), poseStack, bufferSource, packedLight, packedOverlay); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java index 078b819a3c..616880da50 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java @@ -33,10 +33,11 @@ public BlockConjured(Properties properties) { } @Override - public void playerWillDestroy(Level pLevel, BlockPos pPos, BlockState pState, Player pPlayer) { - super.playerWillDestroy(pLevel, pPos, pState, pPlayer); + public BlockState playerWillDestroy(Level pLevel, BlockPos pPos, BlockState pState, Player pPlayer) { + var res = super.playerWillDestroy(pLevel, pPos, pState, pPlayer); // For some reason the block doesn't play breaking noises. So we fix that! pPlayer.playSound(SoundEvents.AMETHYST_BLOCK_BREAK, 1f, 1f); + return res; } @Nullable diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java index 39545fd968..d36dff4297 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java @@ -10,7 +10,9 @@ import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; +import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelReader; @@ -39,24 +41,33 @@ public BlockAkashicBookshelf(Properties p_49795_) { } @Override - public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, - BlockHitResult pHit) { - if (pLevel.getBlockEntity(pPos) instanceof BlockEntityAkashicBookshelf shelf) { - var stack = pPlayer.getItemInHand(pHand); + protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hitResult) { + if (level.getBlockEntity(pos) instanceof BlockEntityAkashicBookshelf shelf) { if (stack.getItem() instanceof ItemScroll scroll) { - if (!pLevel.isClientSide()) { + if (!level.isClientSide()) { scroll.writeDatum(stack, new PatternIota(shelf.getPattern())); } - pLevel.playSound(pPlayer, pPos, HexSounds.SCROLL_SCRIBBLE, SoundSource.BLOCKS, 1f, 1f); - return InteractionResult.sidedSuccess(pLevel.isClientSide); - } else if (pPlayer.isDiscrete() && pHand == InteractionHand.MAIN_HAND && stack.isEmpty()) { - if (!pLevel.isClientSide()) { + level.playSound(player, pos, HexSounds.SCROLL_SCRIBBLE, SoundSource.BLOCKS, 1f, 1f); + return ItemInteractionResult.sidedSuccess(level.isClientSide); + } + } + + return stack.isEmpty() && hand == InteractionHand.MAIN_HAND + ? ItemInteractionResult.SKIP_DEFAULT_BLOCK_INTERACTION + : ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION; + } + + @Override + protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hitResult) { + if (level.getBlockEntity(pos) instanceof BlockEntityAkashicBookshelf shelf) { + if (player.isDiscrete()) { + if (!level.isClientSide()) { shelf.clearIota(); } - pLevel.playSound(pPlayer, pPos, HexSounds.SCROLL_SCRIBBLE, SoundSource.BLOCKS, - 1f, 0.8f); - return InteractionResult.sidedSuccess(pLevel.isClientSide); + level.playSound(player, pos, HexSounds.SCROLL_SCRIBBLE, SoundSource.BLOCKS, + 1f, 0.8f); + return InteractionResult.sidedSuccess(level.isClientSide); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java index db3f96ac14..dc14338edd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.casting.math.HexPattern; import net.minecraft.core.BlockPos; +import net.minecraft.nbt.NbtOps; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; @@ -45,8 +46,7 @@ BlockPos addNewDatum(BlockPos herePos, Level level, HexPattern key, Iota datum) } } - public @Nullable - Iota lookupPattern(BlockPos herePos, HexPattern key, ServerLevel slevel) { + public @Nullable Iota lookupPattern(BlockPos herePos, HexPattern key, ServerLevel slevel) { var foundPos = AkashicFloodfiller.floodFillFor(herePos, slevel, (pos, bs, world) -> world.getBlockEntity(pos) instanceof BlockEntityAkashicBookshelf tile @@ -56,8 +56,7 @@ Iota lookupPattern(BlockPos herePos, HexPattern key, ServerLevel slevel) { } var tile = (BlockEntityAkashicBookshelf) slevel.getBlockEntity(foundPos); - var tag = tile.getIotaTag(); - return tag == null ? null : IotaType.deserialize(tag, slevel); + return tile != null ? tile.getIota() : null; } // TODO get comparators working again and also cache the number of iotas somehow? diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java index d6e4cd8041..2e5569dd4c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java @@ -7,7 +7,10 @@ import at.petrak.hexcasting.client.render.HexPatternPoints; import at.petrak.hexcasting.common.lib.HexBlockEntities; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; +import net.minecraft.nbt.Tag; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @@ -18,10 +21,11 @@ public class BlockEntityAkashicBookshelf extends HexBlockEntity { // This is only not null if this stores any data. private HexPattern pattern = null; + // TODO port: check if it works // When the world is first loading we can sometimes try to deser this from nbt without the world existing yet. // We also need a way to display the iota to the client. // For both these cases we save just the tag of the iota. - private CompoundTag iotaTag = null; + private Iota iota = null; public HexPatternPoints points; @@ -35,14 +39,20 @@ public HexPattern getPattern() { } @Nullable - public CompoundTag getIotaTag() { - return iotaTag; + public Iota getIota() { + return iota; } + /*@Nullable + public Tag getIotaTag() { + return iotaTag; + }*/ + public void setNewMapping(HexPattern pattern, Iota iota) { var previouslyEmpty = this.pattern == null; this.pattern = pattern; - this.iotaTag = IotaType.serialize(iota); + this.iota = iota; + //this.iotaTag = IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, iota).getOrThrow(); if (previouslyEmpty) { var oldBs = this.getBlockState(); @@ -57,7 +67,8 @@ public void setNewMapping(HexPattern pattern, Iota iota) { public void clearIota() { var previouslyEmpty = this.pattern == null; this.pattern = null; - this.iotaTag = null; + //this.iotaTag = null; + this.iota = null; if (!previouslyEmpty) { var oldBs = this.getBlockState(); @@ -70,23 +81,25 @@ public void clearIota() { } @Override - protected void saveModData(CompoundTag compoundTag) { - if (this.pattern != null && this.iotaTag != null) { - compoundTag.put(TAG_PATTERN, this.pattern.serializeToNBT()); - compoundTag.put(TAG_IOTA, this.iotaTag); + protected void saveModData(CompoundTag compoundTag, HolderLookup.Provider registries) { + if (this.pattern != null && this.iota != null) { + compoundTag.put(TAG_PATTERN, HexPattern.CODEC.encodeStart(NbtOps.INSTANCE, pattern).getOrThrow()); + compoundTag.put(TAG_IOTA, IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, iota).getOrThrow()); } else { compoundTag.putBoolean(TAG_DUMMY, false); } } @Override - protected void loadModData(CompoundTag tag) { + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { if (tag.contains(TAG_PATTERN) && tag.contains(TAG_IOTA)) { - this.pattern = HexPattern.fromNBT(tag.getCompound(TAG_PATTERN)); - this.iotaTag = tag.getCompound(TAG_IOTA); + this.pattern = HexPattern.CODEC.parse(NbtOps.INSTANCE, tag.getCompound(TAG_PATTERN)).getOrThrow(); + //this.iotaTag = tag.getCompound(TAG_IOTA); + this.iota = IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, tag.getCompound(TAG_IOTA)).getOrThrow(); } else if (tag.contains(TAG_DUMMY)) { this.pattern = null; - this.iotaTag = null; + //this.iotaTag = null; + this.iota = null; } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java index 9a0ec965bc..acb0c4ca4b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java @@ -4,7 +4,9 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.common.lib.HexBlockEntities; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @@ -20,23 +22,19 @@ public BlockEntitySlate(BlockPos pos, BlockState state) { } @Override - protected void saveModData(CompoundTag tag) { + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { if (this.pattern != null) { - tag.put(TAG_PATTERN, this.pattern.serializeToNBT()); + tag.put(TAG_PATTERN, HexPattern.CODEC.encodeStart(NbtOps.INSTANCE, pattern).getOrThrow()); } else { tag.put(TAG_PATTERN, new CompoundTag()); } } @Override - protected void loadModData(CompoundTag tag) { + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { if (tag.contains(TAG_PATTERN, Tag.TAG_COMPOUND)) { - CompoundTag patternTag = tag.getCompound(TAG_PATTERN); - if (HexPattern.isPattern(patternTag)) { - this.pattern = HexPattern.fromNBT(patternTag); - } else { - this.pattern = null; - } + Tag patternTag = tag.get(TAG_PATTERN); + this.pattern = HexPattern.CODEC.parse(NbtOps.INSTANCE, patternTag).result().orElse(null); } else { this.pattern = null; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java index 963d62a649..6355f37fc5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java @@ -5,6 +5,7 @@ import at.petrak.hexcasting.common.lib.HexBlockEntities; import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; @@ -35,8 +36,9 @@ public static void serverTick(Level level, BlockPos pos, BlockState bs, BlockEnt int prevLookAmt = self.lookAmount; int range = 20; + //TODO port: test AABB check, it's Vec3 now instead of BlockPos var players = level.getEntitiesOfClass(ServerPlayer.class, - new AABB(pos.offset(-range, -range, -range), pos.offset(range, range, range))); + new AABB(pos.offset(-range, -range, -range).getCenter(), pos.offset(range, range, range).getCenter())); ServerPlayer looker = null; for (var player : players) { @@ -84,14 +86,14 @@ public static void serverTick(Level level, BlockPos pos, BlockState bs, BlockEnt } @Override - protected void saveModData(CompoundTag tag) { - super.saveModData(tag); + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { + super.saveModData(tag, registries); tag.putInt(TAG_LOOK_AMOUNT, this.lookAmount); } @Override - protected void loadModData(CompoundTag tag) { - super.loadModData(tag); + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { + super.loadModData(tag, registries); this.lookAmount = tag.getInt(TAG_LOOK_AMOUNT); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java index b776d156ce..385b591e8a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java @@ -8,15 +8,20 @@ import com.mojang.datafixers.util.Pair; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.ExtraCodecs; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; +import net.minecraft.world.item.component.ResolvableProfile; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @@ -31,15 +36,14 @@ public class BlockEntityRedstoneImpetus extends BlockEntityAbstractImpetus { private GameProfile storedPlayerProfile = null; private UUID storedPlayer = null; - private GameProfile cachedDisplayProfile = null; + private ResolvableProfile cachedDisplayProfile = null; private ItemStack cachedDisplayStack = null; public BlockEntityRedstoneImpetus(BlockPos pWorldPosition, BlockState pBlockState) { super(HexBlockEntities.IMPETUS_REDSTONE_TILE, pWorldPosition, pBlockState); } - protected @Nullable - GameProfile getPlayerName() { + protected @Nullable GameProfile getPlayerName() { if (this.level instanceof ServerLevel) { Player player = getStoredPlayer(); if (player != null) { @@ -61,6 +65,7 @@ public void clearPlayer() { this.storedPlayer = null; } + //TODO port: test player profiles public void updatePlayerProfile() { ServerPlayer player = getStoredPlayer(); if (player != null) { @@ -99,17 +104,18 @@ public void applyScryingLensOverlay(List> lines, Direction hitFace) { super.applyScryingLensOverlay(lines, state, pos, observer, world, hitFace); - var name = this.getPlayerName(); - if (name != null) { - if (!name.equals(cachedDisplayProfile) || cachedDisplayStack == null) { - cachedDisplayProfile = name; + var plProfile = this.getPlayerName(); + if (plProfile != null) { + var resolvableProfile = new ResolvableProfile(plProfile); + if (!plProfile.equals(resolvableProfile) || cachedDisplayStack == null) { + cachedDisplayProfile = resolvableProfile; var head = new ItemStack(Items.PLAYER_HEAD); - NBTHelper.put(head, "SkullOwner", NbtUtils.writeGameProfile(new CompoundTag(), name)); - head.getItem().verifyTagAfterLoad(head.getOrCreateTag()); + head.set(DataComponents.PROFILE, resolvableProfile); + head.getItem().verifyComponentsAfterLoad(head); cachedDisplayStack = head; } lines.add(new Pair<>(cachedDisplayStack, - Component.translatable("hexcasting.tooltip.lens.impetus.redstone.bound", name.getName()))); + Component.translatable("hexcasting.tooltip.lens.impetus.redstone.bound", plProfile.getName()))); } else { lines.add(new Pair<>(new ItemStack(Items.BARRIER), Component.translatable("hexcasting.tooltip.lens.impetus.redstone.bound.none"))); @@ -117,26 +123,26 @@ public void applyScryingLensOverlay(List> lines, } @Override - protected void saveModData(CompoundTag tag) { - super.saveModData(tag); + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { + super.saveModData(tag, registries); if (this.storedPlayer != null) { tag.putUUID(TAG_STORED_PLAYER, this.storedPlayer); } if (this.storedPlayerProfile != null) { - tag.put(TAG_STORED_PLAYER_PROFILE, NbtUtils.writeGameProfile(new CompoundTag(), storedPlayerProfile)); + tag.put(TAG_STORED_PLAYER_PROFILE, ExtraCodecs.GAME_PROFILE.encodeStart(NbtOps.INSTANCE, storedPlayerProfile).getOrThrow()); } } @Override - protected void loadModData(CompoundTag tag) { - super.loadModData(tag); + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { + super.loadModData(tag, registries); if (tag.contains(TAG_STORED_PLAYER, Tag.TAG_INT_ARRAY)) { this.storedPlayer = tag.getUUID(TAG_STORED_PLAYER); } else { this.storedPlayer = null; } if (tag.contains(TAG_STORED_PLAYER_PROFILE, Tag.TAG_COMPOUND)) { - this.storedPlayerProfile = NbtUtils.readGameProfile(tag.getCompound(TAG_STORED_PLAYER_PROFILE)); + this.storedPlayerProfile = ExtraCodecs.GAME_PROFILE.parse(NbtOps.INSTANCE, tag.getCompound(TAG_STORED_PLAYER_PROFILE)).getOrThrow(); } else { this.storedPlayerProfile = null; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java index 6cb5a1c245..b84a5d052c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.common.blocks.circles.impetuses; import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; +import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; import at.petrak.hexcasting.common.lib.HexBlockEntities; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Level; @@ -16,6 +17,11 @@ public BlockLookingImpetus(Properties p_49795_) { super(p_49795_); } + @Override + public BlockEntityType getBlockEntityType() { + return HexBlockEntities.IMPETUS_LOOK_TILE; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java index fe4fb73e1b..168fb42a9c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java @@ -1,7 +1,9 @@ package at.petrak.hexcasting.common.blocks.circles.impetuses; import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; +import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; import at.petrak.hexcasting.api.casting.iota.EntityIota; +import at.petrak.hexcasting.common.lib.HexBlockEntities; import at.petrak.hexcasting.common.lib.HexSounds; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.BlockPos; @@ -10,10 +12,13 @@ import net.minecraft.util.RandomSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; +import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; @@ -28,6 +33,11 @@ public BlockRedstoneImpetus(Properties p_49795_) { super(p_49795_); } + @Override + public BlockEntityType getBlockEntityType() { + return HexBlockEntities.IMPETUS_REDSTONE_TILE; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { @@ -41,37 +51,38 @@ protected void createBlockStateDefinition(StateDefinition.Builder getBlockEntityType() { + return HexBlockEntities.IMPETUS_RIGHTCLICK_TILE; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { @@ -24,14 +32,13 @@ public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { } @Override - public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, - BlockHitResult pHit) { - if (!pPlayer.isShiftKeyDown()) { - var tile = pLevel.getBlockEntity(pPos); + protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hitResult) { + if (!player.isShiftKeyDown()) { + var tile = level.getBlockEntity(pos); if (tile instanceof BlockEntityRightClickImpetus impetus) { - if (pPlayer instanceof ServerPlayer serverPlayer) { + if (player instanceof ServerPlayer sPlayer) { // impetus.activateSpellCircle(serverPlayer); - impetus.startExecution(serverPlayer); + impetus.startExecution(sPlayer); } return InteractionResult.SUCCESS; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java index 8206a583a7..8eaea34e68 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.blocks.decoration; +import com.mojang.serialization.MapCodec; import net.minecraft.core.BlockPos; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; @@ -8,11 +9,14 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.DirectionalBlock; +import net.minecraft.world.level.block.EndRodBlock; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.phys.BlockHitResult; public class BlockAmethystDirectional extends DirectionalBlock { + public static final MapCodec CODEC = simpleCodec(BlockAmethystDirectional::new); + public BlockAmethystDirectional(Properties properties) { super(properties); } @@ -23,7 +27,6 @@ public void onProjectileHit(Level level, BlockState state, BlockHitResult result level.playSound(null, pos, SoundEvents.AMETHYST_BLOCK_HIT, SoundSource.BLOCKS, 1.0F, 0.5F + level.random.nextFloat() * 1.2F); level.playSound(null, pos, SoundEvents.AMETHYST_BLOCK_CHIME, SoundSource.BLOCKS, 1.0F, 0.5F + level.random.nextFloat() * 1.2F); } - } protected void createBlockStateDefinition(StateDefinition.Builder $$0) { @@ -33,4 +36,9 @@ protected void createBlockStateDefinition(StateDefinition.Builder codec() { + return CODEC; + } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java index 6bc4459c00..c94970d4fb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java @@ -10,7 +10,7 @@ public class BlockHexDoor extends DoorBlock { public BlockHexDoor(Properties $$0) { - super($$0, HexBlockSetTypes.EDIFIED_WOOD); + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java index 10fc89230e..a36a2a6c3f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java @@ -12,7 +12,7 @@ public class BlockHexFenceGate extends FenceGateBlock { public BlockHexFenceGate(Properties $$0) { - super($$0, WoodType.DARK_OAK); + super(WoodType.DARK_OAK, $$0); } @SoftImplement("forge") diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java index 5e6a517b1d..0017c066b1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java @@ -9,8 +9,8 @@ import net.minecraft.world.level.block.state.BlockState; public class BlockHexPressurePlate extends PressurePlateBlock { - public BlockHexPressurePlate(Sensitivity $$0, Properties $$1) { - super($$0, $$1, HexBlockSetTypes.EDIFIED_WOOD); + public BlockHexPressurePlate(Properties $$0) { + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java index 3e2620c59b..62d49a6eeb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java @@ -10,7 +10,7 @@ public class BlockHexTrapdoor extends TrapDoorBlock { public BlockHexTrapdoor(Properties $$0) { - super($$0, HexBlockSetTypes.EDIFIED_WOOD); + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } @SoftImplement("forge") diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java index 355f9edb9a..3676b5a009 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java @@ -10,7 +10,7 @@ public class BlockHexWoodButton extends ButtonBlock { public BlockHexWoodButton(Properties $$0) { - super($$0, BlockSetType.DARK_OAK, 30, true); + super(BlockSetType.DARK_OAK, 30, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityConjured.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityConjured.java index 5ac5004b91..e9caf5c417 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityConjured.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityConjured.java @@ -7,7 +7,9 @@ import at.petrak.hexcasting.common.lib.HexBlockEntities; import at.petrak.hexcasting.common.particles.ConjureParticleOptions; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.world.entity.Entity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.Vec3; @@ -89,13 +91,13 @@ public void landParticle(Entity entity, int number) { } @Override - protected void saveModData(CompoundTag tag) { - tag.put(TAG_COLORIZER, this.colorizer.serializeToNBT()); + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { + tag.put(TAG_COLORIZER, FrozenPigment.CODEC.encodeStart(NbtOps.INSTANCE, colorizer).getOrThrow()); } @Override - protected void loadModData(CompoundTag tag) { - this.colorizer = FrozenPigment.fromNBT(tag.getCompound(TAG_COLORIZER)); + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { + this.colorizer = FrozenPigment.CODEC.parse(NbtOps.INSTANCE, tag.getCompound(TAG_COLORIZER)).getOrThrow(); } public FrozenPigment getColorizer() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityQuenchedAllay.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityQuenchedAllay.java index dac5512a58..186bc613ab 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityQuenchedAllay.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/entity/BlockEntityQuenchedAllay.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.common.blocks.BlockQuenchedAllay; import at.petrak.hexcasting.common.lib.HexBlockEntities; import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.state.BlockState; @@ -22,12 +23,12 @@ public static BiFunction fromKno } @Override - protected void saveModData(CompoundTag tag) { + protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { } @Override - protected void loadModData(CompoundTag tag) { + protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt index 34a28f0d26..552ba4e5ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt @@ -24,6 +24,6 @@ object OpAkashicRead : ConstMediaAction { } val datum = record.lookupPattern(pos, key, env.world) - return listOf(datum ?: NullIota()) + return listOf(datum ?: NullIota.INSTANCE) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicWrite.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicWrite.kt index 2089965835..5ee2cf655a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicWrite.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicWrite.kt @@ -34,7 +34,7 @@ object OpAkashicWrite : SpellAction { throw MishapNoAkashicRecord(pos) } - val trueName = MishapOthersName.getTrueNameFromDatum(datum, env.castingEntity as? ServerPlayer) + val trueName = MishapOthersName.getTrueNameFromDatum(env.world, datum, env.castingEntity as? ServerPlayer) if (trueName != null) throw MishapOthersName(trueName) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt index dacaa022a8..261cf0f696 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt @@ -13,7 +13,7 @@ object OpIndex : ConstMediaAction { override fun execute(args: List, env: CastingEnvironment): List { val list = args.getList(0, argc).toMutableList() val index = args.getDouble(1, argc) - val x = list.getOrElse(index.roundToInt()) { NullIota() } + val x = list.getOrElse(index.roundToInt()) { NullIota.INSTANCE } return listOf(x) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt index 211e91283d..5156595309 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt @@ -14,6 +14,6 @@ object OpUnCons : ConstMediaAction { if (list.nonEmpty) { return listOf(ListIota(list.cdr), list.car) } - return listOf(args[0], NullIota()) + return listOf(args[0], NullIota.INSTANCE) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt index 375b5bbcc0..f0e4b994c6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt @@ -9,15 +9,16 @@ import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.NullIota import at.petrak.hexcasting.common.lib.hex.HexEvalSounds +import net.minecraft.nbt.NbtOps object OpPeekLocal : Action { override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { val stack = image.stack.toMutableList() val rm = if (image.userData.contains(HexAPI.RAVENMIND_USERDATA)) { - IotaType.deserialize(image.userData.getCompound(HexAPI.RAVENMIND_USERDATA), env.world) + IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, image.userData.getCompound(HexAPI.RAVENMIND_USERDATA)).getOrThrow() } else { - NullIota() + NullIota.INSTANCE } stack.add(rm) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt index 59c8a7e078..0346451238 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt @@ -10,6 +10,8 @@ import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import at.petrak.hexcasting.common.lib.hex.HexIotaTypes +import net.minecraft.nbt.NbtOps +import net.minecraft.nbt.Tag object OpPushLocal : Action { override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { @@ -22,7 +24,7 @@ object OpPushLocal : Action { if (newLocal.type == HexIotaTypes.NULL) image.userData.remove(HexAPI.RAVENMIND_USERDATA) else - image.userData.put(HexAPI.RAVENMIND_USERDATA, IotaType.serialize(newLocal)) + image.userData.put(HexAPI.RAVENMIND_USERDATA, IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, newLocal).getOrThrow()) val image2 = image.withUsedOp().copy(stack = stack) return OperationResult(image2, listOf(), continuation, HexEvalSounds.NORMAL_EXECUTE) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityHeight.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityHeight.kt index 5e84528387..d8907cc416 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityHeight.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityHeight.kt @@ -10,7 +10,7 @@ object OpEntityHeight : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val e = args.getEntity(0, argc) + val e = args.getEntity(env.world, 0, argc) env.assertEntityInRange(e) return e.bbHeight.asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityLook.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityLook.kt index 23e47e9076..b1eaed2c6f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityLook.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityLook.kt @@ -10,7 +10,7 @@ object OpEntityLook : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val e = args.getEntity(0, argc) + val e = args.getEntity(env.world, 0, argc) env.assertEntityInRange(e) return e.lookAngle.asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityPos.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityPos.kt index 06a6e1cb36..2cb8188297 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityPos.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityPos.kt @@ -10,7 +10,7 @@ class OpEntityPos(val feet: Boolean) : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val e = args.getEntity(0, argc) + val e = args.getEntity(env.world, 0, argc) env.assertEntityInRange(e) return (if (this.feet) e.position() else e.eyePosition).asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityVelocity.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityVelocity.kt index 8ce1097d56..293329a8bc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityVelocity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpEntityVelocity.kt @@ -11,7 +11,7 @@ object OpEntityVelocity : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val e = args.getEntity(0, argc) + val e = args.getEntity(env.world, 0, argc) env.assertEntityInRange(e) val vel = HexAPI.instance().getEntityVelocitySpecial(e) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt index 2aa68ecf28..37d7aa33e9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt @@ -35,7 +35,7 @@ object OpBlockAxisRaycast : ConstMediaAction { return if (blockHitResult.type == HitResult.Type.BLOCK && env.isVecInRange(Vec3.atCenterOf(blockHitResult.blockPos))) { blockHitResult.direction.step().asActionResult } else { - listOf(NullIota()) + listOf(NullIota.INSTANCE) } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt index 33a2e990eb..34bd19b8aa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt @@ -39,7 +39,7 @@ object OpBlockRaycast : ConstMediaAction { // TODO some action that has the "weird" version? blockHitResult.blockPos.asActionResult } else { - listOf(NullIota()) + listOf(NullIota.INSTANCE) } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt index 64ea54525a..75ea1d5adf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt @@ -38,7 +38,7 @@ object OpEntityRaycast : ConstMediaAction { return if (entityHitResult != null && env.isEntityInRange(entityHitResult.entity)) { entityHitResult.entity.asActionResult } else { - listOf(NullIota()) + listOf(NullIota.INSTANCE) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpRead.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpRead.kt index 51791b6d26..0c8087b4b3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpRead.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpRead.kt @@ -12,7 +12,7 @@ object OpRead : ConstMediaAction { override fun execute(args: List, env: CastingEnvironment): List { val (handStack) = env.getHeldItemToOperateOn { val dataHolder = IXplatAbstractions.INSTANCE.findDataHolder(it) - dataHolder != null && (dataHolder.readIota(env.world) != null || dataHolder.emptyIota() != null) + dataHolder != null && (dataHolder.readIota() != null || dataHolder.emptyIota() != null) } // If there are no data holders that are readable, find a data holder that isn't readable // so that the error message is more helpful. @@ -24,7 +24,7 @@ object OpRead : ConstMediaAction { val datumHolder = IXplatAbstractions.INSTANCE.findDataHolder(handStack) ?: throw MishapBadOffhandItem.of(handStack, "iota.read") - val datum = datumHolder.readIota(env.world) + val datum = datumHolder.readIota() ?: datumHolder.emptyIota() ?: throw MishapBadOffhandItem.of(handStack, "iota.read") diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpReadable.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpReadable.kt index d368b9d87b..93d234dfc0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpReadable.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpReadable.kt @@ -18,7 +18,7 @@ object OpReadable : ConstMediaAction { ?: return false.asActionResult // If the datum contains no iota, return whether it has a default empty iota. - datumHolder.readIota(env.world) + datumHolder.readIota() ?: return (datumHolder.emptyIota() != null).asActionResult return true.asActionResult diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerRead.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerRead.kt index 4fd4a69f8b..060ebe9d77 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerRead.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerRead.kt @@ -14,14 +14,14 @@ object OpTheCoolerRead : ConstMediaAction { args: List, env: CastingEnvironment ): List { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) env.assertEntityInRange(target) val datumHolder = IXplatAbstractions.INSTANCE.findDataHolder(target) ?: throw MishapBadEntity.of(target, "iota.read") - val datum = datumHolder.readIota(env.world) + val datum = datumHolder.readIota() ?: datumHolder.emptyIota() ?: throw MishapBadEntity.of(target, "iota.read") return listOf(datum) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerReadable.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerReadable.kt index aa118182af..2b191da486 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerReadable.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerReadable.kt @@ -14,13 +14,13 @@ object OpTheCoolerReadable : ConstMediaAction { args: List, env: CastingEnvironment ): List { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) env.assertEntityInRange(target) val datumHolder = IXplatAbstractions.INSTANCE.findDataHolder(target) ?: return false.asActionResult - datumHolder.readIota(env.world) + datumHolder.readIota() ?: datumHolder.emptyIota() ?: return false.asActionResult diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt index 598ae8b145..e76a6dba84 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt @@ -15,13 +15,13 @@ object OpTheCoolerWritable : ConstMediaAction { args: List, env: CastingEnvironment ): List { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) env.assertEntityInRange(target) val datumHolder = IXplatAbstractions.INSTANCE.findDataHolder(target) ?: return false.asActionResult - val success = datumHolder.writeIota(NullIota(), true) + val success = datumHolder.writeIota(NullIota.INSTANCE, true) return success.asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWrite.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWrite.kt index 27e02a8f97..326705b32a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWrite.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWrite.kt @@ -19,7 +19,7 @@ object OpTheCoolerWrite : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) val datum = args[1] env.assertEntityInRange(target) @@ -32,7 +32,7 @@ object OpTheCoolerWrite : SpellAction { // We pass null here so that even the own caster won't be allowed into a focus. // Otherwise, you could sentinel scout to people and remotely write their names into things using a cleric circle. - val trueName = MishapOthersName.getTrueNameFromDatum(datum, null) + val trueName = MishapOthersName.getTrueNameFromDatum(env.world, datum, null) if (trueName != null) throw MishapOthersName(trueName) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpWrite.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpWrite.kt index 317dbc0453..66407097a7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpWrite.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpWrite.kt @@ -37,7 +37,7 @@ object OpWrite : SpellAction { if (!datumHolder.writeIota(datum, true)) throw MishapBadOffhandItem.of(handStack, "iota.readonly", datum.display()) - val trueName = MishapOthersName.getTrueNameFromDatum(datum, env.castingEntity as? ServerPlayer) + val trueName = MishapOthersName.getTrueNameFromDatum(env.world, datum, env.castingEntity as? ServerPlayer) if (trueName != null) throw MishapOthersName(trueName) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpAddMotion.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpAddMotion.kt index 7f45168f85..90c1d15a0b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpAddMotion.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpAddMotion.kt @@ -25,7 +25,7 @@ object OpAddMotion : SpellAction { env: CastingEnvironment, userData: CompoundTag ): SpellAction.Result { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) val motion = args.getVec3(1, argc) env.assertEntityInRange(target) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpBlink.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpBlink.kt index a26f460d74..34a9862be8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpBlink.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpBlink.kt @@ -20,14 +20,13 @@ import kotlin.math.roundToLong object OpBlink : SpellAction { override val argc = 2 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) val delta = args.getDouble(1, argc) env.assertEntityInRange(target) - // TODO: is this the same as canChangeDimensions? and what does that boolean do anyways if (!target.canUsePortal(true) || target.type.`is`(HexTags.Entities.CANNOT_TELEPORT)) throw MishapImmuneEntity(target) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpColorize.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpColorize.kt index 1011420536..0c7da5c6f4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpColorize.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpColorize.kt @@ -15,8 +15,8 @@ object OpColorize : SpellAction { override val argc = 0 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { val (handStack) = env.getHeldItemToOperateOn(IXplatAbstractions.INSTANCE::isPigment) ?: throw MishapBadOffhandItem.of(ItemStack.EMPTY, "colorizer") // TODO: hack diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpDestroyFluid.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpDestroyFluid.kt index 17c1aa43a2..7f6da8e60d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpDestroyFluid.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpDestroyFluid.kt @@ -23,8 +23,8 @@ import net.minecraft.world.phys.Vec3 object OpDestroyFluid : SpellAction { override val argc = 1 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { val vecPos = args.getVec3(0, argc) val pos = BlockPos.containing(vecPos) @@ -79,7 +79,7 @@ object OpDestroyFluid : SpellAction { ) { val success = if (blockstate.block is BucketPickup && !(blockstate.block as BucketPickup).pickupBlock( - env.caster, + env.castingEntity as? ServerPlayer, env.world, here, blockstate diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpIgnite.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpIgnite.kt index 4ad9a736f7..10e55fa507 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpIgnite.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpIgnite.kt @@ -27,12 +27,12 @@ import net.minecraft.world.phys.Vec3 object OpIgnite : SpellAction { override val argc = 1 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { when (val target = args[0]) { is EntityIota -> { - val entity = args.getEntity(0, argc) + val entity = args.getEntity(env.world, 0, argc) env.assertEntityInRange(entity) return SpellAction.Result( EntitySpell(entity), @@ -40,7 +40,6 @@ object OpIgnite : SpellAction { listOf(ParticleSpray.burst(entity.position(), 1.0)) ) } - is Vec3Iota -> { val block = args.getBlockPos(0, argc) env.assertPosInRangeForEditing(block) @@ -50,7 +49,6 @@ object OpIgnite : SpellAction { listOf(ParticleSpray.burst(Vec3.atCenterOf(BlockPos(block)), 1.0)) ) } - else -> throw MishapInvalidIota.ofType(target, 0, "entity_or_vector") } } @@ -64,12 +62,7 @@ object OpIgnite : SpellAction { } fun tryToClick(ctx: CastingEnvironment, pos: BlockPos, item: Item): Boolean { - return IXplatAbstractions.INSTANCE.isPlacingAllowed( - ctx.world, - pos, - ItemStack(item), - ctx.castingEntity as? ServerPlayer - ) && + return IXplatAbstractions.INSTANCE.isPlacingAllowed(ctx.world, pos, ItemStack(item), ctx.castingEntity as? ServerPlayer) && item.useOn( UseOnContext( ctx.world, @@ -84,7 +77,9 @@ object OpIgnite : SpellAction { private data class EntitySpell(val entity: Entity) : RenderedSpell { override fun cast(env: CastingEnvironment) { - entity.igniteForSeconds(8f) + if (!entity.fireImmune()) { + entity.igniteForSeconds(8.0f) + } } } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt index 9420e53242..c62d816844 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt @@ -58,7 +58,7 @@ class OpMakePackagedSpell(val isValid: Predicate, val expectedTypeDes ) } - val trueName = MishapOthersName.getTrueNameFromArgs(patterns, env.castingEntity as? ServerPlayer) + val trueName = MishapOthersName.getTrueNameFromArgs(env.world, patterns, env.castingEntity as? ServerPlayer) if (trueName != null) throw MishapOthersName(trueName) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPlaceBlock.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPlaceBlock.kt index 88c3113e68..16a7dcc247 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPlaceBlock.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPlaceBlock.kt @@ -9,7 +9,6 @@ import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.mishaps.MishapBadBlock import at.petrak.hexcasting.api.casting.mishaps.MishapBadOffhandItem import at.petrak.hexcasting.api.misc.MediaConstants -import at.petrak.hexcasting.mixin.accessor.AccessorUseOnContext import at.petrak.hexcasting.xplat.IXplatAbstractions import net.minecraft.core.BlockPos import net.minecraft.core.Direction @@ -21,6 +20,7 @@ import net.minecraft.world.InteractionResult import net.minecraft.world.item.BlockItem import net.minecraft.world.item.ItemStack import net.minecraft.world.item.context.BlockPlaceContext +import net.minecraft.world.item.context.UseOnContext import net.minecraft.world.phys.BlockHitResult import net.minecraft.world.phys.Vec3 @@ -40,15 +40,7 @@ object OpPlaceBlock : SpellAction { ) val itemUseCtx = env .queryForMatchingStack { it.item is BlockItem } - ?.let { - AccessorUseOnContext.`hex$new`( - env.world, - env.castingEntity as? ServerPlayer, - env.castingHand, - it, - blockHit - ) - } + ?.let { UseOnContext(env.world, env.castingEntity as? ServerPlayer, env.castingHand, it, blockHit) } ?: throw MishapBadOffhandItem.of(ItemStack.EMPTY, "placeable") val placeContext = BlockPlaceContext(itemUseCtx) @@ -85,20 +77,14 @@ object OpPlaceBlock : SpellAction { spoofedStack.count = 1 val itemUseCtx = - AccessorUseOnContext.`hex$new`( - env.world, - caster as? ServerPlayer, - env.otherHand, - spoofedStack, - blockHit - ) + UseOnContext(env.world, caster as? ServerPlayer, env.otherHand, spoofedStack, blockHit) val placeContext = BlockPlaceContext(itemUseCtx) if (bstate.canBeReplaced(placeContext)) { - if (env.withdrawItem({ ItemStack.isSameItemSameTags(it, placeeStack) }, 1, false)) { + if (env.withdrawItem({ ItemStack.isSameItemSameComponents(it, placeeStack) }, 1, false)) { val res = spoofedStack.useOn(placeContext) if (res != InteractionResult.FAIL) { - env.withdrawItem({ ItemStack.isSameItemSameTags(it, placeeStack) }, 1, true) + env.withdrawItem({ ItemStack.isSameItemSameComponents(it, placeeStack) }, 1, true) env.world.playSound( caster as? ServerPlayer, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt index a6a565d8d8..543053cfeb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt @@ -19,8 +19,8 @@ class OpPotionEffect( get() = if (this.allowPotency) 3 else 2 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { val target = args.getLivingEntityButNotArmorStand(0, argc) val duration = args.getPositiveDouble(1, argc) @@ -42,12 +42,7 @@ class OpPotionEffect( ) } - private class Spell( - val effect: Holder, - val target: LivingEntity, - val duration: Double, - val potency: Double - ) : + private class Spell(val effect: Holder, val target: LivingEntity, val duration: Double, val potency: Double) : RenderedSpell { override fun cast(env: CastingEnvironment) { if (duration > 1.0 / 20.0) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpTheOnlyReasonAnyoneDownloadedPsi.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpTheOnlyReasonAnyoneDownloadedPsi.kt index 623caf778b..0b663b871c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpTheOnlyReasonAnyoneDownloadedPsi.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpTheOnlyReasonAnyoneDownloadedPsi.kt @@ -7,13 +7,13 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.getBlockPos import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.misc.MediaConstants -import at.petrak.hexcasting.mixin.accessor.AccessorUseOnContext import net.minecraft.core.BlockPos import net.minecraft.core.Direction import net.minecraft.server.level.ServerPlayer import net.minecraft.world.InteractionHand import net.minecraft.world.item.ItemStack import net.minecraft.world.item.Items +import net.minecraft.world.item.context.UseOnContext import net.minecraft.world.phys.BlockHitResult import net.minecraft.world.phys.Vec3 @@ -21,8 +21,8 @@ import net.minecraft.world.phys.Vec3 object OpTheOnlyReasonAnyoneDownloadedPsi : SpellAction { override val argc = 1 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { val target = args.getBlockPos(0, argc) env.assertPosInRangeForEditing(target) @@ -38,13 +38,7 @@ object OpTheOnlyReasonAnyoneDownloadedPsi : SpellAction { override fun cast(env: CastingEnvironment) { // https://github.com/VazkiiMods/Psi/blob/master/src/main/java/vazkii/psi/common/spell/trick/PieceTrickOvergrow.java val hit = BlockHitResult(Vec3.ZERO, Direction.UP, pos, false) - val fakeContext = AccessorUseOnContext.`hex$new`( - env.world, - env.castingEntity as? ServerPlayer, - InteractionHand.MAIN_HAND, - ItemStack(Items.BONE_MEAL), - hit - ) + val fakeContext = UseOnContext(env.world, env.castingEntity as? ServerPlayer, InteractionHand.MAIN_HAND, ItemStack(Items.BONE_MEAL), hit) Items.BONE_MEAL.useOn(fakeContext) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt index 256ccc703a..5166795c0a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt @@ -32,8 +32,8 @@ object OpBrainsweep : SpellAction { override fun hasCastingSound(ctx: CastingEnvironment) = false override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { val sacrifice = args.getMob(0, argc) val vecPos = args.getVec3(1, argc) @@ -54,9 +54,10 @@ object OpBrainsweep : SpellAction { val state = env.world.getBlockState(pos) val recman = env.world.recipeManager - // TODO they changed recipes again val recipes = recman.getAllRecipesFor(HexRecipeStuffRegistry.BRAINSWEEP_TYPE) - val recipe = recipes.find { it.matches(state, sacrifice, env.world) } + val recipe = recipes.asSequence() + .map { it.value } + .find { it.matches(state, sacrifice, env.world) } ?: throw MishapBadBrainsweep(sacrifice, pos) return SpellAction.Result( diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt index f0bf4812d0..dbe42846ea 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt @@ -15,11 +15,13 @@ import at.petrak.hexcasting.api.mod.HexTags import at.petrak.hexcasting.common.msgs.MsgBlinkS2C import at.petrak.hexcasting.xplat.IXplatAbstractions import net.minecraft.core.BlockPos +import net.minecraft.core.component.DataComponents import net.minecraft.server.level.ServerLevel import net.minecraft.server.level.ServerPlayer import net.minecraft.server.level.TicketType import net.minecraft.world.entity.Entity import net.minecraft.world.item.enchantment.EnchantmentHelper +import net.minecraft.world.item.enchantment.Enchantments import net.minecraft.world.level.ChunkPos import net.minecraft.world.phys.Vec3 @@ -28,15 +30,14 @@ import net.minecraft.world.phys.Vec3 object OpTeleport : SpellAction { override val argc = 2 override fun execute( - args: List, - env: CastingEnvironment + args: List, + env: CastingEnvironment ): SpellAction.Result { - val teleportee = args.getEntity(0, argc) + val teleportee = args.getEntity(env.world, 0, argc) val delta = args.getVec3(1, argc) env.assertEntityInRange(teleportee) - // TODO: see todos on blink if (!teleportee.canUsePortal(true) || teleportee.type.`is`(HexTags.Entities.CANNOT_TELEPORT)) throw MishapImmuneEntity(teleportee) @@ -73,7 +74,7 @@ object OpTeleport : SpellAction { // having to rearrange those. Also it makes sense for LORE REASONS probably, since the caster is more // aware of items they use often. for (armorItem in teleportee.inventory.armor) { - if (EnchantmentHelper.hasBindingCurse(armorItem)) + if (armorItem.get(DataComponents.ENCHANTMENTS)?.keySet()?.any { e -> e.`is`(Enchantments.BINDING_CURSE) } == true) continue if (Math.random() < baseDropChance * 0.25) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt index fa56812ca5..1363ed9528 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt @@ -18,7 +18,7 @@ object OpGetSentinelPos : ConstMediaAction { if (env.castingEntity !is ServerPlayer) throw MishapBadCaster() - val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota()) + val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota.INSTANCE) if (sentinel.dimension != env.world.dimension()) throw MishapLocationInWrongDimension(sentinel.dimension.location()) return sentinel.position.asActionResult diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt index cad52447ed..aacc6ea486 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt @@ -23,7 +23,7 @@ object OpGetSentinelWayfind : ConstMediaAction { val from = args.getVec3(0, argc) - val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota()) + val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota.INSTANCE) if (sentinel.dimension != env.world.dimension()) throw MishapLocationInWrongDimension(sentinel.dimension.location()) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt index 2ecb5fc140..e08265b4e0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt @@ -15,7 +15,7 @@ object OperatorIndex : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.of val it = iotas.iterator() val list = downcast(it.next(), LIST).list.toMutableList() val index = downcast(it.next(), DOUBLE).double - val x = list.getOrElse(index.roundToInt()) { NullIota() } + val x = list.getOrElse(index.roundToInt()) { NullIota.INSTANCE } return listOf(x) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt index 54f0de69c2..be234fd5b7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt @@ -17,6 +17,6 @@ object OperatorUnCons : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate.of val list = it.nextList(arity) if (list.nonEmpty) return listOf(ListIota(list.cdr), list.car) - return listOf(ListIota(list), NullIota()) + return listOf(ListIota(list), NullIota.INSTANCE) } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt index 6d60362b0d..d318ff21a4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt @@ -15,7 +15,7 @@ object OperatorUnappend : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate. override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { val it = iotas.iterator().withIndex() val list = it.nextList(arity).toMutableList() - val last = list.removeLastOrNull() ?: NullIota() + val last = list.removeLastOrNull() ?: NullIota.INSTANCE return listOf(ListIota(list), last) } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java index f39e14d47f..27c50f072f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java @@ -7,7 +7,9 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.items.storage.ItemScroll; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; +import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.server.ScrungledPatternsSave; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.brigadier.builder.LiteralArgumentBuilder; @@ -18,6 +20,7 @@ import net.minecraft.core.Registry; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; @@ -32,18 +35,18 @@ public static void add(LiteralArgumentBuilder cmd) { .then(Commands.literal("list") .executes(ctx -> list(ctx.getSource()))) .then(Commands.literal("give") - .then(Commands.argument("patternName", PatternResLocArgument.id()) + .then(Commands.argument("patternName", PatternResKeyArgument.id()) .executes(ctx -> giveOne(ctx.getSource(), getDefaultTarget(ctx.getSource()), - ResourceLocationArgument.getId(ctx, "patternName"), - PatternResLocArgument.getPattern(ctx, "patternName"))) + PatternResKeyArgument.getPatternKey(ctx, "patternName"), + PatternResKeyArgument.getPattern(ctx, "patternName"))) .then(Commands.argument("targets", EntityArgument.players()) .executes(ctx -> giveOne(ctx.getSource(), EntityArgument.getPlayers(ctx, "targets"), - ResourceLocationArgument.getId(ctx, "patternName"), - PatternResLocArgument.getPattern(ctx, "patternName")))))) + PatternResKeyArgument.getPatternKey(ctx, "patternName"), + PatternResKeyArgument.getPattern(ctx, "patternName")))))) .then(Commands.literal("giveAll") .executes(ctx -> giveAll(ctx.getSource(), @@ -98,18 +101,15 @@ private static int giveAll(CommandSourceStack source, Collection t var startDir = found.getSecond().canonicalStartDir(); var pat = HexPattern.fromAngles(signature, startDir); - var tag = new CompoundTag(); - tag.putString(ItemScroll.TAG_OP_ID, key.location().toString()); - tag.put(ItemScroll.TAG_PATTERN, pat.serializeToNBT()); - var stack = new ItemStack(HexItems.SCROLL_LARGE); - stack.setTag(tag); + stack.set(HexDataComponents.ACTION, key); + stack.set(HexDataComponents.PATTERN, pat); for (var player : targets) { var stackEntity = player.drop(stack, false); if (stackEntity != null) { stackEntity.setNoPickUpDelay(); - stackEntity.setThrower(player.getUUID()); + stackEntity.setThrower(player); } count++; @@ -130,20 +130,17 @@ private static int giveAll(CommandSourceStack source, Collection t } private static int giveOne(CommandSourceStack source, Collection targets, - ResourceLocation patternName, HexPattern pat) { + ResourceKey actionKey, HexPattern pat) { if (!targets.isEmpty()) { - var tag = new CompoundTag(); - tag.putString(ItemScroll.TAG_OP_ID, patternName.toString()); - tag.put(ItemScroll.TAG_PATTERN, pat.serializeToNBT()); - var stack = new ItemStack(HexItems.SCROLL_LARGE); - stack.setTag(tag); + stack.set(HexDataComponents.ACTION, actionKey); + stack.set(HexDataComponents.PATTERN, pat); source.sendSuccess(() -> Component.translatable( "command.hexcasting.pats.specific.success", stack.getDisplayName(), - patternName, + actionKey.location(), targets.size() == 1 ? targets.iterator().next().getDisplayName() : targets.size()), true); @@ -151,7 +148,7 @@ private static int giveOne(CommandSourceStack source, Collection t var stackEntity = player.drop(stack, false); if (stackEntity != null) { stackEntity.setNoPickUpDelay(); - stackEntity.setThrower(player.getUUID()); + stackEntity.setThrower(player); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java new file mode 100644 index 0000000000..4413203b37 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java @@ -0,0 +1,83 @@ +package at.petrak.hexcasting.common.command; + +import at.petrak.hexcasting.api.casting.ActionRegistryEntry; +import at.petrak.hexcasting.api.casting.math.HexPattern; +import at.petrak.hexcasting.api.mod.HexTags; +import at.petrak.hexcasting.api.utils.HexUtils; +import at.petrak.hexcasting.common.casting.PatternRegistryManifest; +import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.DynamicCommandExceptionType; +import com.mojang.brigadier.suggestion.Suggestions; +import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.SharedSuggestionProvider; +import net.minecraft.commands.arguments.ResourceKeyArgument; +import net.minecraft.commands.arguments.ResourceLocationArgument; +import net.minecraft.core.Registry; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.crafting.RecipeHolder; +import net.minecraft.world.item.crafting.RecipeManager; + +import java.util.ArrayList; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PatternResKeyArgument extends ResourceKeyArgument { + private static final DynamicCommandExceptionType ERROR_UNKNOWN_PATTERN = new DynamicCommandExceptionType( + (errorer) -> + Component.translatable("hexcasting.pattern.unknown", errorer) + ); + + public PatternResKeyArgument() { + super(HexRegistries.ACTION); + } + + public static PatternResKeyArgument id() { + return new PatternResKeyArgument(); + } + + @Override + public CompletableFuture listSuggestions(CommandContext context, SuggestionsBuilder builder) { + var suggestions = new ArrayList(); + var registry = IXplatAbstractions.INSTANCE.getActionRegistry(); + for (var key : registry.registryKeySet()) { + if (HexUtils.isOfTag(registry, key, HexTags.Actions.PER_WORLD_PATTERN)) { + suggestions.add(key.location().toString()); + } + } + + return SharedSuggestionProvider.suggest(suggestions, builder); + } + + public static ResourceKey getResourceKey( + CommandContext context, + String argumentName, + ResourceKey> registryKey, + DynamicCommandExceptionType exceptionType + ) throws CommandSyntaxException { + ResourceKey key = context.getArgument(argumentName, ResourceKey.class); + Optional> optional = key.cast(registryKey); + return optional.orElseThrow(() -> exceptionType.create(key.location())); + } + + public static ResourceKey getPatternKey( + CommandContext ctx, String argumentName) throws CommandSyntaxException { + return getResourceKey(ctx, argumentName, HexRegistries.ACTION, ERROR_UNKNOWN_PATTERN); + } + + public static HexPattern getPattern( + CommandContext ctx, String argumentName) throws CommandSyntaxException { + var targetKey = getPatternKey(ctx, argumentName); + var foundPat = PatternRegistryManifest.getCanonicalStrokesPerWorld(targetKey, ctx.getSource().getServer().overworld()); + if (foundPat == null) { + throw ERROR_UNKNOWN_PATTERN.create(targetKey.location()); + } else { + return foundPat; + } + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java index 6403a422c9..d3a8813238 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java @@ -20,6 +20,7 @@ import java.util.ArrayList; import java.util.concurrent.CompletableFuture; +@Deprecated public class PatternResLocArgument extends ResourceLocationArgument { private static final DynamicCommandExceptionType ERROR_UNKNOWN_PATTERN = new DynamicCommandExceptionType( (errorer) -> diff --git a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java index 03d916c8f7..0d3de91530 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.items.storage.ItemScroll; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; import at.petrak.hexcasting.common.msgs.MsgNewWallScrollS2C; @@ -13,11 +14,13 @@ import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientCommonPacketListener; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.network.syncher.EntityDataAccessor; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerEntity; import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; @@ -26,10 +29,12 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.decoration.HangingEntity; +import net.minecraft.world.entity.decoration.PaintingVariant; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameRules; import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; @@ -61,20 +66,13 @@ public EntityWallScroll(Level world, BlockPos pos, Direction dir, ItemStack scro } public void recalculateDisplay() { - CompoundTag patternTag = NBTHelper.getCompound(scroll, ItemScroll.TAG_PATTERN); - if (patternTag != null) { - this.pattern = HexPattern.fromNBT(patternTag); - this.isAncient = NBTHelper.hasString(scroll, ItemScroll.TAG_OP_ID); - } else { - this.pattern = null; - this.isAncient = false; - } + this.pattern = scroll.get(HexDataComponents.PATTERN); + this.isAncient = scroll.has(HexDataComponents.ACTION); } @Override - protected void defineSynchedData() { - super.defineSynchedData(); - this.entityData.define(SHOWS_STROKE_ORDER, false); + protected void defineSynchedData(SynchedEntityData.Builder builder) { + builder.define(SHOWS_STROKE_ORDER, false); } public boolean getShowsStrokeOrder() { @@ -86,13 +84,17 @@ public void setShowsStrokeOrder(boolean b) { } @Override - public int getWidth() { - return 16 * blockSize; - } - - @Override - public int getHeight() { - return 16 * blockSize; + protected AABB calculateBoundingBox(BlockPos pos, Direction p_direction) { + float f = 0.46875F; + Vec3 vec3 = Vec3.atCenterOf(pos).relative(p_direction, -0.46875); + double d0 = blockSize % 2 == 0 ? 0.5 : 0.0; + Direction direction = p_direction.getCounterClockWise(); + Vec3 vec31 = vec3.relative(direction, d0).relative(Direction.UP, d0); + Direction.Axis direction$axis = p_direction.getAxis(); + double d2 = direction$axis == Direction.Axis.X ? 0.0625 : blockSize; + double d3 = blockSize; + double d4 = direction$axis == Direction.Axis.Z ? 0.0625 : blockSize; + return AABB.ofSize(vec31, d2, d3, d4); } @Override @@ -138,9 +140,9 @@ public void playPlacementSound() { } @Override - public Packet getAddEntityPacket() { + public Packet getAddEntityPacket(ServerEntity entity) { return IXplatAbstractions.INSTANCE.toVanillaClientboundPacket( - new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this), + new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this, this.direction.get3DDataValue(), this.getPos()), pos, direction, scroll, getShowsStrokeOrder(), blockSize)); } @@ -160,7 +162,7 @@ public void readSpawnData(BlockPos pos, Direction dir, ItemStack scrollItem, @Override public void addAdditionalSaveData(CompoundTag tag) { tag.putByte("direction", (byte) this.direction.ordinal()); - tag.put("scroll", HexUtils.serializeToNBT(this.scroll)); + tag.put("scroll", this.scroll.save(registryAccess())); tag.putBoolean("showsStrokeOrder", this.getShowsStrokeOrder()); tag.putInt("blockSize", this.blockSize); super.addAdditionalSaveData(tag); @@ -169,7 +171,7 @@ public void addAdditionalSaveData(CompoundTag tag) { @Override public void readAdditionalSaveData(CompoundTag tag) { this.direction = Direction.values()[tag.getByte("direction")]; - this.scroll = ItemStack.of(tag.getCompound("scroll")); + this.scroll = ItemStack.parse(registryAccess(), tag.getCompound("scroll")).orElse(ItemStack.EMPTY); this.blockSize = tag.getInt("blockSize"); this.setDirection(this.direction); @@ -187,9 +189,8 @@ public void moveTo(double pX, double pY, double pZ, float pYaw, float pPitch) { } @Override - public void lerpTo(double pX, double pY, double pZ, float pYaw, float pPitch, int pPosRotationIncrements, - boolean pTeleport) { - BlockPos blockpos = this.pos.offset((int) (pX - this.getX()), (int) (pY - this.getY()), (int) (pZ - this.getZ())); + public void lerpTo(double x, double y, double z, float yRot, float xRot, int steps) { + BlockPos blockpos = this.pos.offset((int) (x - this.getX()), (int) (y - this.getY()), (int) (z - this.getZ())); this.setPos(blockpos.getX(), blockpos.getY(), blockpos.getZ()); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java index 0ff996b907..c80424c0a5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java @@ -21,6 +21,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Collections; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import java.util.function.Consumer; @@ -96,50 +97,15 @@ public FrozenPigment getColorizer(Player player) { return IXplatAbstractions.INSTANCE.getPigment(player); } - ArmorMaterial ARMOR_MATERIAL = new ArmorMaterial() { - - @Override - public int getDurabilityForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getDefenseForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getEnchantmentValue() { - return 0; - } - - @NotNull - @Override - public SoundEvent getEquipSound() { - return SoundEvents.ARMOR_EQUIP_LEATHER; - } - - @NotNull - @Override - public Ingredient getRepairIngredient() { - return Ingredient.EMPTY; - } - - @Override - public String getName() { - return "robes"; - } - - @Override - public float getToughness() { - return 0; - } - - @Override - public float getKnockbackResistance() { - return 0; - } - }; + ArmorMaterial ARMOR_MATERIAL = new ArmorMaterial( + Collections.emptyMap(), + 0, + SoundEvents.ARMOR_EQUIP_LEATHER, + () -> Ingredient.EMPTY, + Collections.emptyList(), // TODO check textures. If not - use robes here from original code + 0, + 0 + ); @Override public ArmorMaterial robesMaterial() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/HexBaubleItem.java b/Common/src/main/java/at/petrak/hexcasting/common/items/HexBaubleItem.java index ed208b1b64..fc84afbeb4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/HexBaubleItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/HexBaubleItem.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.common.items; import com.google.common.collect.Multimap; +import net.minecraft.core.Holder; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.item.ItemStack; @@ -10,5 +11,5 @@ * I feel like botnia probably does it this way becase it's older than xplat curios */ public interface HexBaubleItem { - Multimap getHexBaubleAttrs(ItemStack stack); + Multimap, AttributeModifier> getHexBaubleAttrs(ItemStack stack); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java index d5b059f5f7..f1d6135e74 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java @@ -2,16 +2,18 @@ import at.petrak.hexcasting.common.lib.HexItems; import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.PickaxeItem; import net.minecraft.world.item.Tier; +import net.minecraft.world.item.component.ItemAttributeModifiers; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; public class ItemJewelerHammer extends PickaxeItem { - public ItemJewelerHammer(Tier tier, int damageMod, float attackSpeedMod, Properties props) { - super(tier, damageMod, attackSpeedMod, props); + public ItemJewelerHammer(Tier tier, Properties props) { + super(tier, props); } public static boolean shouldFailToBreak(Player player, BlockState state, BlockPos pos) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java index 4b77873f29..cce4e2bf9d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java @@ -1,18 +1,22 @@ package at.petrak.hexcasting.common.items; import at.petrak.hexcasting.annotations.SoftImplement; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.lib.HexAttributes; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; -import net.minecraft.core.BlockSource; +import net.minecraft.core.Holder; +import net.minecraft.core.dispenser.BlockSource; import net.minecraft.core.dispenser.OptionalDispenseItemBehavior; import net.minecraft.world.entity.EquipmentSlot; +import net.minecraft.world.entity.EquipmentSlotGroup; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; //import net.minecraft.world.item.Wearable; +import net.minecraft.world.item.component.ItemAttributeModifiers; import net.minecraft.world.level.block.DispenserBlock; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,18 +28,15 @@ public class ItemLens extends Item implements HexBaubleItem { // Wearable, // The 0.1 is *additive* public static final AttributeModifier GRID_ZOOM = new AttributeModifier( - UUID.fromString("59d739b8-d419-45f7-a4ea-0efee0e3adf5"), - "Scrying Lens Zoom", 0.33, AttributeModifier.Operation.MULTIPLY_BASE); + HexAPI.modLoc("scrying_lens_zoom"), 0.33, AttributeModifier.Operation.ADD_MULTIPLIED_BASE); public static final AttributeModifier SCRY_SIGHT = new AttributeModifier( - UUID.fromString("e2e6e5d4-f978-4c11-8fdc-82a5af83385c"), - "Scrying Lens Sight", 1.0, AttributeModifier.Operation.ADDITION); + HexAPI.modLoc("scrying_lens_sight"), 1.0, AttributeModifier.Operation.ADD_VALUE); public ItemLens(Properties pProperties) { super(pProperties); DispenserBlock.registerBehavior(this, new OptionalDispenseItemBehavior() { - protected @NotNull - ItemStack execute(@NotNull BlockSource world, @NotNull ItemStack stack) { + protected @NotNull ItemStack execute(@NotNull BlockSource world, @NotNull ItemStack stack) { this.setSuccess(ArmorItem.dispenseArmor(world, stack)); return stack; } @@ -43,20 +44,23 @@ ItemStack execute(@NotNull BlockSource world, @NotNull ItemStack stack) { } @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - var out = HashMultimap.create(super.getDefaultAttributeModifiers(slot)); - if (slot == EquipmentSlot.HEAD || slot == EquipmentSlot.MAINHAND || slot == EquipmentSlot.OFFHAND) { - out.put(HexAttributes.GRID_ZOOM, GRID_ZOOM); - out.put(HexAttributes.SCRY_SIGHT, SCRY_SIGHT); - } - return out; + public ItemAttributeModifiers getDefaultAttributeModifiers() { + return ItemAttributeModifiers.builder() + .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.HEAD) + .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.MAINHAND) + .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.OFFHAND) + + .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.HEAD) + .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.MAINHAND) + .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.OFFHAND) + .build(); } @Override - public Multimap getHexBaubleAttrs(ItemStack stack) { - HashMultimap out = HashMultimap.create(); - out.put(HexAttributes.GRID_ZOOM, GRID_ZOOM); - out.put(HexAttributes.SCRY_SIGHT, SCRY_SIGHT); + public Multimap, AttributeModifier> getHexBaubleAttrs(ItemStack stack) { + HashMultimap, AttributeModifier> out = HashMultimap.create(); + out.put(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM); + out.put(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT); return out; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java index 3d2f347bee..52e88072fd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -49,11 +50,11 @@ public InteractionResultHolder use(Level level, Player player, Intera return InteractionResultHolder.success(handStack); } - Advancement unfoundLore = null; + AdvancementHolder unfoundLore = null; var shuffled = new ArrayList<>(NAMES); Collections.shuffle(shuffled); for (var advID : shuffled) { - var adv = splayer.server.getAdvancements().getAdvancement(advID); + var adv = splayer.server.getAdvancements().get(advID); if (adv == null) { continue; // uh oh } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index 558f716dc5..c9d4a6a42c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -6,6 +6,8 @@ import at.petrak.hexcasting.common.msgs.MsgClearSpiralPatternsS2C; import at.petrak.hexcasting.common.msgs.MsgOpenSpellGuiS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import net.minecraft.core.Holder; +import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.stats.Stats; @@ -18,7 +20,7 @@ public class ItemStaff extends Item { // 0 = normal. 1 = old. 2 = cherry preview - public static final ResourceLocation FUNNY_LEVEL_PREDICATE = new ResourceLocation(HexAPI.MOD_ID, "funny_level"); + public static final ResourceLocation FUNNY_LEVEL_PREDICATE = ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, "funny_level"); public ItemStaff(Properties pProperties) { super(pProperties); @@ -26,7 +28,7 @@ public ItemStaff(Properties pProperties) { @Override public InteractionResultHolder use(Level world, Player player, InteractionHand hand) { - if (player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0){ + if (player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0){ return InteractionResultHolder.fail(player.getItemInHand(hand)); } if (player.isShiftKeyDown()) { @@ -43,10 +45,16 @@ public InteractionResultHolder use(Level world, Player player, Intera if (!world.isClientSide() && player instanceof ServerPlayer serverPlayer) { var vm = IXplatAbstractions.INSTANCE.getStaffcastVM(serverPlayer, hand); var patterns = IXplatAbstractions.INSTANCE.getPatternsSavedInUi(serverPlayer); - var descs = vm.generateDescs(); + + var userData = vm.getImage().getUserData(); + CompoundTag ravenmind = null; + if(userData.contains(HexAPI.RAVENMIND_USERDATA)) + ravenmind = userData.getCompound(HexAPI.RAVENMIND_USERDATA); + else + ravenmind = new CompoundTag(); IXplatAbstractions.INSTANCE.sendPacketToPlayer(serverPlayer, - new MsgOpenSpellGuiS2C(hand, patterns, descs.getFirst(), descs.getSecond(), + new MsgOpenSpellGuiS2C(hand, patterns, vm.getImage().getStack(), ravenmind, 0)); // TODO: Fix! } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java b/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java index 3ec73cbdc6..9ddef43531 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.common.items.armor; import at.petrak.hexcasting.api.HexAPI; +import net.minecraft.core.Holder; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.ArmorItem; @@ -13,7 +14,7 @@ public class ItemRobes extends ArmorItem { public final ArmorItem.Type type; public ItemRobes(ArmorItem.Type type, Properties properties) { - super(HexAPI.instance().robesMaterial(), type, properties); + super(Holder.direct(HexAPI.instance().robesMaterial()), type, properties); this.type = type; } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/DebugUnlockerHolder.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/DebugUnlockerHolder.java index 045a6eeb76..a3bc73ded4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/DebugUnlockerHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/DebugUnlockerHolder.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.common.items.magic; import at.petrak.hexcasting.api.addldata.ADMediaHolder; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.world.item.ItemStack; public record DebugUnlockerHolder(ItemStack creativeUnlocker) implements ADMediaHolder { @@ -41,14 +42,14 @@ public boolean canConstructBattery() { @Override public long withdrawMedia(long cost, boolean simulate) { - ItemCreativeUnlocker.addToLongArray(creativeUnlocker, ItemCreativeUnlocker.TAG_EXTRACTIONS, cost); + ItemCreativeUnlocker.addToLongArray(creativeUnlocker, HexDataComponents.MEDIA_EXTRACTIONS, cost); return cost < 0 ? getMedia() : cost; } @Override public long insertMedia(long amount, boolean simulate) { - ItemCreativeUnlocker.addToLongArray(creativeUnlocker, ItemCreativeUnlocker.TAG_INSERTIONS, amount); + ItemCreativeUnlocker.addToLongArray(creativeUnlocker, HexDataComponents.MEDIA_INSERTIONS, amount); return amount; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java index 44568c1f8e..b6e8d2ef02 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.ChatFormatting; @@ -14,7 +15,6 @@ import java.util.List; public class ItemAncientCypher extends ItemCypher { - public static final String TAG_PATTERNS = "patterns"; public static final String TAG_HEX_NAME = "hex_name"; public ItemAncientCypher(Properties pProperties) { @@ -24,13 +24,13 @@ public ItemAncientCypher(Properties pProperties) { @Override public void clearHex(ItemStack stack) { super.clearHex(stack); - NBTHelper.remove(stack, TAG_HEX_NAME); + stack.remove(HexDataComponents.HEX_NAME); } @Override - public Component getName(ItemStack pStack) { - var descID = this.getDescriptionId(pStack); - var hexName = NBTHelper.getString(pStack, TAG_HEX_NAME); + public Component getName(ItemStack stack) { + var descID = this.getDescriptionId(stack); + var hexName = stack.get(HexDataComponents.HEX_NAME); if (hexName != null) { return Component.translatable(descID + ".preset", Component.translatable(hexName)); } else { @@ -39,21 +39,21 @@ public Component getName(ItemStack pStack) { } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { // display media fullness as usual - super.appendHoverText(pStack, pLevel, pTooltipComponents, pIsAdvanced); + super.appendHoverText(stack, context, tooltipComponents, tooltipFlag); + + var patterns = stack.get(HexDataComponents.PATTERNS); // also show contained spell - var patternsTag = NBTHelper.getList(pStack, TAG_PATTERNS, Tag.TAG_COMPOUND); - if (patternsTag != null) { + if(patterns != null) { var storedHex = Component.translatable("hexcasting.tooltip.stored_hex"); - for (var iotaTag : patternsTag) { - var iotaTagC = NBTHelper.getAsCompound(iotaTag); - var iotaComponent = IotaType.getDisplay(iotaTagC).copy(); - storedHex.append(iotaComponent.withStyle(ChatFormatting.DARK_PURPLE)); + + for(var iota : patterns) { + storedHex.append(iota.display().plainCopy().withStyle(ChatFormatting.DARK_PURPLE)); } - pTooltipComponents.add(storedHex); + + tooltipComponents.add(storedHex); } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java index 586f8b2c02..8697b5ac42 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java @@ -4,12 +4,14 @@ import at.petrak.hexcasting.api.item.MediaHolderItem; import at.petrak.hexcasting.api.misc.DiscoveryHandlers; import at.petrak.hexcasting.api.misc.MediaConstants; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.items.ItemLoreFragment; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.ChatFormatting; -import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementNode; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.core.component.DataComponents; import net.minecraft.locale.Language; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; @@ -27,7 +29,6 @@ import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; -import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.Arrays; @@ -70,7 +71,7 @@ public static boolean isDebug(ItemStack stack) { } public static boolean isDebug(ItemStack stack, String flag) { - if (!stack.is(HexItems.CREATIVE_UNLOCKER) || !stack.hasCustomHoverName()) { + if (!stack.is(HexItems.CREATIVE_UNLOCKER) || !stack.has(DataComponents.CUSTOM_NAME)) { return false; } var keywords = Arrays.asList(stack.getHoverName().getString().toLowerCase(Locale.ROOT).split(" ")); @@ -124,31 +125,17 @@ public boolean canRecharge(ItemStack stack) { return true; } - public static void addToIntArray(ItemStack stack, String tag, int n) { - int[] arr = NBTHelper.getIntArray(stack, tag); - if (arr == null) { - arr = new int[0]; - } - int[] newArr = Arrays.copyOf(arr, arr.length + 1); - newArr[newArr.length - 1] = n; - NBTHelper.putIntArray(stack, tag, newArr); - } - - public static void addToLongArray(ItemStack stack, String tag, long n) { - long[] arr = NBTHelper.getLongArray(stack, tag); - if (arr == null) { - arr = new long[0]; - } - long[] newArr = Arrays.copyOf(arr, arr.length + 1); - newArr[newArr.length - 1] = n; - NBTHelper.putLongArray(stack, tag, newArr); + public static void addToLongArray(ItemStack stack, DataComponentType> type, long n) { + var list = stack.getOrDefault(type, new ArrayList()); + list.add(n); + stack.set(type, list); } @Override public long withdrawMedia(ItemStack stack, long cost, boolean simulate) { // In case it's withdrawn through other means if (!simulate && isDebug(stack, DISPLAY_MEDIA)) { - addToLongArray(stack, TAG_EXTRACTIONS, cost); + addToLongArray(stack, HexDataComponents.MEDIA_EXTRACTIONS, cost); } return cost < 0 ? getMedia(stack) : cost; @@ -158,7 +145,7 @@ public long withdrawMedia(ItemStack stack, long cost, boolean simulate) { public long insertMedia(ItemStack stack, long amount, boolean simulate) { // In case it's inserted through other means if (!simulate && isDebug(stack, DISPLAY_MEDIA)) { - addToLongArray(stack, TAG_INSERTIONS, amount); + addToLongArray(stack, HexDataComponents.MEDIA_INSERTIONS, amount); } return amount < 0 ? getMaxMedia(stack) : amount; @@ -172,16 +159,16 @@ public boolean isFoil(ItemStack stack) { @Override public void inventoryTick(ItemStack stack, Level level, Entity entity, int slot, boolean selected) { if (isDebug(stack, DISPLAY_MEDIA) && !level.isClientSide) { - debugDisplay(stack, TAG_EXTRACTIONS, "withdrawn", "all_media", entity); - debugDisplay(stack, TAG_INSERTIONS, "inserted", "infinite_media", entity); + debugDisplay(stack, HexDataComponents.MEDIA_EXTRACTIONS, "withdrawn", "all_media", entity); + debugDisplay(stack, HexDataComponents.MEDIA_INSERTIONS, "inserted", "infinite_media", entity); } } - private void debugDisplay(ItemStack stack, String tag, String langKey, String allKey, Entity entity) { - long[] arr = NBTHelper.getLongArray(stack, tag); - if (arr != null) { - NBTHelper.remove(stack, tag); - for (long i : arr) { + private void debugDisplay(ItemStack stack, DataComponentType> type, String langKey, String allKey, Entity entity) { + var list = stack.get(type); + if (list != null) { + stack.remove(type); + for (long i : list) { if (i < 0) { entity.sendSystemMessage(Component.translatable("hexcasting.debug.media_" + langKey, stack.getDisplayName(), @@ -217,19 +204,21 @@ public ItemStack finishUsingItem(ItemStack stack, Level level, LivingEntity cons var names = new ArrayList<>(ItemLoreFragment.NAMES); names.add(0, modLoc("root")); for (var name : names) { - var rootAdv = slevel.getServer().getAdvancements().getAdvancement(name); + var rootAdv = slevel.getServer().getAdvancements().tree().get(name); if (rootAdv != null) { - var children = new ArrayList(); + var children = new ArrayList(); children.add(rootAdv); - addChildren(rootAdv, children); + collectChildrenRecursively(rootAdv, children); var adman = player.getAdvancements(); + + for (var kid : children) { - var progress = adman.getOrStartProgress(kid); + var progress = adman.getOrStartProgress(kid.holder()); if (!progress.isDone()) { for (String crit : progress.getRemainingCriteria()) { - adman.award(kid, crit); + adman.award(kid.holder(), crit); } } } @@ -252,9 +241,9 @@ private static MutableComponent rainbow(MutableComponent component, int shift, L } @Override - public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltipComponents, + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag isAdvanced) { - Component emphasized = infiniteMedia(level); + Component emphasized = infiniteMedia(context.level()); MutableComponent modName = Component.translatable("item.hexcasting.creative_unlocker.mod_name").withStyle( (s) -> s.withColor(ItemMediaHolder.HEX_COLOR)); @@ -264,10 +253,10 @@ public void appendHoverText(ItemStack stack, @Nullable Level level, List out) { - for (Advancement kiddo : root.getChildren()) { + private static void collectChildrenRecursively(AdvancementNode root, List out) { + for (AdvancementNode kiddo : root.children()) { out.add(kiddo); - addChildren(kiddo, out); + collectChildrenRecursively(kiddo, out); } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java index 5bc736a2fa..8603d61e98 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java @@ -5,6 +5,7 @@ import at.petrak.hexcasting.api.utils.MathUtils; import at.petrak.hexcasting.api.utils.MediaHelper; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextColor; import net.minecraft.util.Mth; @@ -39,8 +40,8 @@ public ItemMediaHolder(Properties pProperties) { public static ItemStack withMedia(ItemStack stack, long media, long maxMedia) { Item item = stack.getItem(); if (item instanceof ItemMediaHolder) { - NBTHelper.putLong(stack, TAG_MEDIA, media); - NBTHelper.putLong(stack, TAG_MAX_MEDIA, maxMedia); + stack.set(HexDataComponents.MEDIA, media); + stack.set(HexDataComponents.MEDIA_MAX, media); } return stack; @@ -48,23 +49,19 @@ public static ItemStack withMedia(ItemStack stack, long media, long maxMedia) { @Override public long getMedia(ItemStack stack) { - if (NBTHelper.hasInt(stack, TAG_MEDIA)) - return NBTHelper.getInt(stack, TAG_MEDIA); - - return NBTHelper.getLong(stack, TAG_MEDIA); + var media = stack.get(HexDataComponents.MEDIA); + return media != null ? media : 0L; } @Override public long getMaxMedia(ItemStack stack) { - if (NBTHelper.hasInt(stack, TAG_MAX_MEDIA)) - return NBTHelper.getInt(stack, TAG_MAX_MEDIA); - - return NBTHelper.getLong(stack, TAG_MAX_MEDIA); + var maxMedia = stack.get(HexDataComponents.MEDIA_MAX); + return maxMedia != null ? maxMedia : 0L; } @Override public void setMedia(ItemStack stack, long media) { - NBTHelper.putLong(stack, TAG_MEDIA, MathUtils.clamp(media, 0, getMaxMedia(stack))); + stack.set(HexDataComponents.MEDIA, MathUtils.clamp(media, 0, getMaxMedia(stack))); } @Override @@ -86,18 +83,18 @@ public int getBarWidth(ItemStack pStack) { return MediaHelper.mediaBarWidth(media, maxMedia); } - @Override + // TODO port: where did it came from? + /*@Override public boolean canBeDepleted() { return false; - } + }*/ @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - var maxMedia = getMaxMedia(pStack); + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { + var maxMedia = getMaxMedia(stack); if (maxMedia > 0) { - var media = getMedia(pStack); - var fullness = getMediaFullness(pStack); + var media = getMedia(stack); + var fullness = getMediaFullness(stack); var color = TextColor.fromRgb(MediaHelper.mediaBarColor(media, maxMedia)); @@ -109,11 +106,11 @@ public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List style.withColor(HEX_COLOR)); percentFull.withStyle(style -> style.withColor(color)); - pTooltipComponents.add( + tooltipComponents.add( Component.translatable("hexcasting.tooltip.media_amount.advanced", mediamount, maxCapacity, percentFull)); } - super.appendHoverText(pStack, pLevel, pTooltipComponents, pIsAdvanced); + super.appendHoverText(stack, context, tooltipComponents, tooltipFlag); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java index 1c8886f999..5f976f86d8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java @@ -9,6 +9,7 @@ import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.msgs.MsgNewSpiralPatternsS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.nbt.CompoundTag; @@ -22,6 +23,7 @@ import net.minecraft.stats.Stats; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResultHolder; +import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.UseAnim; @@ -62,53 +64,34 @@ public boolean canProvideMedia(ItemStack stack) { @Override public boolean hasHex(ItemStack stack) { - return NBTHelper.hasList(stack, TAG_PROGRAM, Tag.TAG_COMPOUND); + return stack.has(HexDataComponents.PATTERNS); } @Override public @Nullable List getHex(ItemStack stack, ServerLevel level) { - var patsTag = NBTHelper.getList(stack, TAG_PROGRAM, Tag.TAG_COMPOUND); - - if (patsTag == null) { - return null; - } - - var out = new ArrayList(); - for (var patTag : patsTag) { - CompoundTag tag = NBTHelper.getAsCompound(patTag); - out.add(IotaType.deserialize(tag, level)); - } - return out; + return stack.get(HexDataComponents.PATTERNS); } @Override public void writeHex(ItemStack stack, List program, @Nullable FrozenPigment pigment, long media) { - ListTag patsTag = new ListTag(); - for (Iota pat : program) { - patsTag.add(IotaType.serialize(pat)); - } - - NBTHelper.putList(stack, TAG_PROGRAM, patsTag); + stack.set(HexDataComponents.PATTERNS, program); if (pigment != null) - NBTHelper.putCompound(stack, TAG_PIGMENT, pigment.serializeToNBT()); + stack.set(HexDataComponents.PIGMENT, pigment); withMedia(stack, media, media); } @Override public void clearHex(ItemStack stack) { - NBTHelper.remove(stack, TAG_PROGRAM); - NBTHelper.remove(stack, TAG_PIGMENT); - NBTHelper.remove(stack, TAG_MEDIA); - NBTHelper.remove(stack, TAG_MAX_MEDIA); + stack.remove(HexDataComponents.PATTERNS); + stack.remove(HexDataComponents.PIGMENT); + stack.remove(HexDataComponents.MEDIA); + stack.remove(HexDataComponents.MEDIA_MAX); } @Override public @Nullable FrozenPigment getPigment(ItemStack stack) { - var ctag = NBTHelper.getCompound(stack, TAG_PIGMENT); - if (ctag == null) - return null; - return FrozenPigment.fromNBT(ctag); + return stack.get(HexDataComponents.PIGMENT); } @Override @@ -167,7 +150,7 @@ public InteractionResultHolder use(Level world, Player player, Intera if (broken) { stack.shrink(1); - player.broadcastBreakEvent(usedHand); + sPlayer.onEquippedItemBroken(stack.getItem(), usedHand == InteractionHand.MAIN_HAND ? EquipmentSlot.MAINHAND : EquipmentSlot.OFFHAND); return InteractionResultHolder.consume(stack); } else { return InteractionResultHolder.success(stack); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java index c895177f47..6ce75671e9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.item.PigmentItem; import at.petrak.hexcasting.api.pigment.ColorProvider; import at.petrak.paucal.api.PaucalAPI; +import at.petrak.paucal.xplat.common.ContributorsManifest; import com.google.gson.JsonElement; import com.google.gson.JsonPrimitive; import net.minecraft.world.item.Item; @@ -28,7 +29,7 @@ protected static class MyColorProvider extends ColorProvider { private final int[] colors; MyColorProvider(UUID owner) { - var contributor = PaucalAPI.instance().getContributor(owner); + var contributor = ContributorsManifest.getContributor(owner); if (contributor != null) { var colorList = contributor.otherVals().getAsJsonArray("hexcasting:colorizer"); if (colorList != null) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index ad8527581f..0bfb1bd2f1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -5,6 +5,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -26,13 +27,6 @@ public ItemAbacus(Properties pProperties) { super(pProperties); } - @Override - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { - var datum = new DoubleIota(NBTHelper.getDouble(stack, TAG_VALUE)); - return IotaType.serialize(datum); - } - @Override public boolean writeable(ItemStack stack) { return false; @@ -52,13 +46,13 @@ public void writeDatum(ItemStack stack, Iota datum) { public InteractionResultHolder use(Level world, Player player, InteractionHand hand) { var stack = player.getItemInHand(hand); if (player.isShiftKeyDown()) { - double oldNum = NBTHelper.getDouble(stack, TAG_VALUE); - stack.removeTagKey(TAG_VALUE); + Double oldNum = stack.get(HexDataComponents.ABACUS_VALUE); + stack.remove(HexDataComponents.ABACUS_VALUE); player.playSound(HexSounds.ABACUS_SHAKE, 1f, 1f); var key = "hexcasting.tooltip.abacus.reset"; - if (oldNum == 69) { + if (oldNum != null && oldNum == 69) { key += ".nice"; } player.displayClientMessage(Component.translatable(key), true); @@ -70,8 +64,7 @@ public InteractionResultHolder use(Level world, Player player, Intera } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { + IotaHolderItem.appendHoverText(this, stack, tooltipComponents, tooltipFlag); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java index 8d08c9923f..e713477d43 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java @@ -5,9 +5,11 @@ import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.Unit; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; @@ -26,21 +28,13 @@ public class ItemFocus extends Item implements IotaHolderItem, VariantItem { public static final ResourceLocation VARIANT_PRED = modLoc("variant"); public static final int NUM_VARIANTS = 8; - public static final String TAG_DATA = "data"; - public static final String TAG_SEALED = "sealed"; - public ItemFocus(Properties pProperties) { super(pProperties); } - @Override - public @Nullable CompoundTag readIotaTag(ItemStack stack) { - return NBTHelper.getCompound(stack, TAG_DATA); - } - @Override public String getDescriptionId(ItemStack stack) { - return super.getDescriptionId(stack) + (NBTHelper.getBoolean(stack, TAG_SEALED) ? ".sealed" : ""); + return super.getDescriptionId(stack) + (stack.has(HexDataComponents.SEALED) ? ".sealed" : ""); } @Override @@ -56,25 +50,24 @@ public boolean canWrite(ItemStack stack, Iota datum) { @Override public void writeDatum(ItemStack stack, Iota datum) { if (datum == null) { - stack.removeTagKey(TAG_DATA); - stack.removeTagKey(TAG_SEALED); + stack.remove(HexDataComponents.IOTA); + stack.remove(HexDataComponents.SEALED); } else if (!isSealed(stack)) { - NBTHelper.put(stack, TAG_DATA, IotaType.serialize(datum)); + stack.set(HexDataComponents.IOTA, datum); } } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { + IotaHolderItem.appendHoverText(this, stack, tooltipComponents, tooltipFlag); } public static boolean isSealed(ItemStack stack) { - return NBTHelper.getBoolean(stack, TAG_SEALED); + return stack.has(HexDataComponents.SEALED); } public static void seal(ItemStack stack) { - NBTHelper.putBoolean(stack, TAG_SEALED, true); + stack.set(HexDataComponents.SEALED, Unit.INSTANCE); } @Override @@ -85,6 +78,6 @@ public int numVariants() { @Override public void setVariant(ItemStack stack, int variant) { if (!isSealed(stack)) - NBTHelper.putInt(stack, TAG_VARIANT, clampVariant(variant)); + VariantItem.super.setVariant(stack, variant); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java index 1bea5dfec5..b9d5ca6003 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.items.storage; +import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.casting.iota.Iota; import at.petrak.hexcasting.api.casting.iota.PatternIota; import at.petrak.hexcasting.api.casting.math.HexPattern; @@ -7,6 +8,7 @@ import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; import at.petrak.hexcasting.common.entities.EntityWallScroll; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; @@ -15,6 +17,7 @@ import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -47,9 +50,6 @@ * (none): "Empty Scroll" */ public class ItemScroll extends Item implements IotaHolderItem { - public static final String TAG_OP_ID = "op_id"; - public static final String TAG_PATTERN = "pattern"; - public static final String TAG_NEEDS_PURCHASE = "needs_purchase"; public static final ResourceLocation ANCIENT_PREDICATE = modLoc("ancient"); public final int blockSize; @@ -60,28 +60,15 @@ public ItemScroll(Properties pProperties, int blockSize) { } // this produces a scroll that will load the correct pattern for your world once it ticks - public static ItemStack withPerWorldPattern(ItemStack stack, String op_id) { + public static ItemStack withPerWorldPattern(ItemStack stack, ResourceKey action) { Item item = stack.getItem(); - if (item instanceof ItemScroll) - NBTHelper.putString(stack, TAG_OP_ID, op_id); + if (item instanceof ItemScroll) { + stack.set(HexDataComponents.ACTION, action); + } return stack; } - @Override - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { - CompoundTag pattern = NBTHelper.getCompound(stack, TAG_PATTERN); - if (pattern == null) { - return null; - } - // We store only the data part of the iota; pretend the rest of it's there - var out = new CompoundTag(); - out.putString(HexIotaTypes.KEY_TYPE, "hexcasting:pattern"); - out.put(HexIotaTypes.KEY_DATA, pattern); - return out; - } - @Override public boolean writeable(ItemStack stack) { return true; @@ -96,9 +83,9 @@ public boolean canWrite(ItemStack stack, Iota datum) { public void writeDatum(ItemStack stack, Iota datum) { if (this.canWrite(stack, datum)) { if (datum instanceof PatternIota pat) { - NBTHelper.putCompound(stack, TAG_PATTERN, pat.getPattern().serializeToNBT()); + stack.set(HexDataComponents.PATTERN, pat.getPattern()); } else if (datum == null) { - NBTHelper.remove(stack, TAG_PATTERN); + stack.remove(HexDataComponents.PATTERN); } } } @@ -119,9 +106,9 @@ public InteractionResult useOn(UseOnContext ctx) { var scrollEntity = new EntityWallScroll(level, posInFront, direction, scrollStack, false, this.blockSize); // i guess - var stackTag = itemstack.getTag(); - if (stackTag != null) { - EntityType.updateCustomEntityTag(level, player, scrollEntity, stackTag); + var customData = itemstack.get(DataComponents.CUSTOM_DATA); + if (customData != null) { + EntityType.updateCustomEntityTag(level, player, scrollEntity, customData); } if (scrollEntity.survives()) { @@ -146,15 +133,14 @@ protected boolean mayPlace(Player pPlayer, Direction pDirection, ItemStack pHang @Override public Component getName(ItemStack pStack) { var descID = this.getDescriptionId(pStack); - var ancientId = NBTHelper.getString(pStack, TAG_OP_ID); - if (ancientId != null) { + var ancientAction = pStack.get(HexDataComponents.ACTION); + if (ancientAction != null) { return Component.translatable(descID + ".of", - Component.translatable("hexcasting.action." + ResourceLocation.tryParse(ancientId))); - } else if (NBTHelper.hasCompound(pStack, TAG_PATTERN)) { - var compound = NBTHelper.getCompound(pStack, TAG_PATTERN); + Component.translatable("hexcasting.action." + ancientAction.location())); + } else if (pStack.has(HexDataComponents.PATTERN)) { + var pattern = pStack.get(HexDataComponents.PATTERN); var patternLabel = Component.literal(""); - if (compound != null) { - var pattern = HexPattern.fromNBT(compound); + if (pattern != null) { patternLabel = Component.literal(": ").append(new InlinePatternData(pattern).asText(false)); } return Component.translatable(descID).append(patternLabel); @@ -167,43 +153,34 @@ public Component getName(ItemStack pStack) { public void inventoryTick(ItemStack pStack, Level pLevel, Entity pEntity, int pSlotId, boolean pIsSelected) { // the needs_purchase tag is used so you can't see the pattern on scrolls sold by a wandering trader // once you put the scroll into your inventory, this removes the tag to reveal the pattern - if (NBTHelper.getBoolean(pStack, TAG_NEEDS_PURCHASE)) { - NBTHelper.remove(pStack, TAG_NEEDS_PURCHASE); - } + if(pStack.has(HexDataComponents.NEEDS_PURCHASE)) + pStack.remove(HexDataComponents.NEEDS_PURCHASE); // if op_id is set but there's no stored pattern, attempt to load the pattern on inv tick - if (NBTHelper.hasString(pStack, TAG_OP_ID) && !NBTHelper.hasCompound(pStack, TAG_PATTERN) && pEntity.getServer() != null) { - var opID = ResourceLocation.tryParse(NBTHelper.getString(pStack, TAG_OP_ID)); - if (opID == null) { - // if the provided op_id is invalid, remove it so we don't keep trying every tick - NBTHelper.remove(pStack, TAG_OP_ID); - return; - } - var patternKey = ResourceKey.create(IXplatAbstractions.INSTANCE.getActionRegistry().key(), opID); - var pat = PatternRegistryManifest.getCanonicalStrokesPerWorld(patternKey, pEntity.getServer().overworld()); - NBTHelper.put(pStack, TAG_PATTERN, pat.serializeToNBT()); + if (pStack.has(HexDataComponents.ACTION) && !pStack.has(HexDataComponents.PATTERN) && pEntity.getServer() != null) { + var action = pStack.get(HexDataComponents.ACTION); + var pat = PatternRegistryManifest.getCanonicalStrokesPerWorld(action, pEntity.getServer().overworld()); + pStack.set(HexDataComponents.PATTERN, pat); } } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - if (NBTHelper.getBoolean(pStack, TAG_NEEDS_PURCHASE)) { + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { + if (stack.has(HexDataComponents.NEEDS_PURCHASE)) { var needsPurchase = Component.translatable("hexcasting.tooltip.scroll.needs_purchase"); - pTooltipComponents.add(needsPurchase.withStyle(ChatFormatting.GRAY)); - } else if (NBTHelper.hasString(pStack, TAG_OP_ID) && !NBTHelper.hasCompound(pStack, TAG_PATTERN)) { + tooltipComponents.add(needsPurchase.withStyle(ChatFormatting.GRAY)); + } else if (stack.has(HexDataComponents.ACTION) && !stack.has(HexDataComponents.PATTERN)) { var notLoaded = Component.translatable("hexcasting.tooltip.scroll.pattern_not_loaded"); - pTooltipComponents.add(notLoaded.withStyle(ChatFormatting.GRAY)); + tooltipComponents.add(notLoaded.withStyle(ChatFormatting.GRAY)); } } @Override public Optional getTooltipImage(ItemStack stack) { - var compound = NBTHelper.getCompound(stack, TAG_PATTERN); - if (compound != null && !NBTHelper.getBoolean(stack, TAG_NEEDS_PURCHASE)) { - var pattern = HexPattern.fromNBT(compound); + var pattern = stack.get(HexDataComponents.PATTERN); + if (pattern != null && !stack.has(HexDataComponents.NEEDS_PURCHASE)) { return Optional.of(new PatternTooltip( pattern, - NBTHelper.hasString(stack, TAG_OP_ID) + stack.has(HexDataComponents.ACTION) ? PatternTooltipComponent.ANCIENT_BG : PatternTooltipComponent.PRISTINE_BG)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java index 98227d1eab..e01858f660 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java @@ -12,7 +12,9 @@ import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.interop.inline.InlinePatternData; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -21,6 +23,7 @@ import net.minecraft.world.inventory.tooltip.TooltipComponent; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import org.jetbrains.annotations.Nullable; @@ -46,14 +49,11 @@ public Component getName(ItemStack pStack) { } public static Optional getPattern(ItemStack stack){ - var bet = NBTHelper.getCompound(stack, "BlockEntityTag"); + var bet = stack.get(DataComponents.BLOCK_ENTITY_DATA); - if (bet != null && bet.contains(BlockEntitySlate.TAG_PATTERN, Tag.TAG_COMPOUND)) { - var patTag = bet.getCompound(BlockEntitySlate.TAG_PATTERN); - if (!patTag.isEmpty()) { - var pattern = HexPattern.fromNBT(patTag); - return Optional.of(pattern); - } + if (bet != null && bet.contains(BlockEntitySlate.TAG_PATTERN)) { + var pattern = bet.read(HexPattern.CODEC.fieldOf(BlockEntitySlate.TAG_PATTERN)).result().orElse(null); + return Optional.ofNullable(pattern); } return Optional.empty(); } @@ -65,7 +65,7 @@ public static boolean hasPattern(ItemStack stack) { @SoftImplement("IForgeItem") public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) { if (!hasPattern(stack)) { - NBTHelper.remove(stack, "BlockEntityTag"); + stack.remove(DataComponents.BLOCK_ENTITY_DATA); } return false; } @@ -73,27 +73,22 @@ public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) { @Override public void inventoryTick(ItemStack pStack, Level pLevel, Entity pEntity, int pSlotId, boolean pIsSelected) { if (!hasPattern(pStack)) { - NBTHelper.remove(pStack, "BlockEntityTag"); + pStack.remove(DataComponents.BLOCK_ENTITY_DATA); } } @Override - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { - var bet = NBTHelper.getCompound(stack, "BlockEntityTag"); + public @Nullable Iota readIota(ItemStack stack) { + var bet = stack.get(DataComponents.BLOCK_ENTITY_DATA);; - if (bet == null || !bet.contains(BlockEntitySlate.TAG_PATTERN, Tag.TAG_COMPOUND)) { + if (bet == null || !bet.contains(BlockEntitySlate.TAG_PATTERN)) { return null; } - var patTag = bet.getCompound(BlockEntitySlate.TAG_PATTERN); - if (patTag.isEmpty()) { - return null; - } - var out = new CompoundTag(); - out.putString(HexIotaTypes.KEY_TYPE, "hexcasting:pattern"); - out.put(HexIotaTypes.KEY_DATA, patTag); - return out; + return bet.read(HexPattern.CODEC.fieldOf(BlockEntitySlate.TAG_PATTERN)) + .result() + .map(PatternIota::new) + .orElse(null); } @Override @@ -110,14 +105,23 @@ public boolean canWrite(ItemStack stack, Iota datum) { public void writeDatum(ItemStack stack, Iota datum) { if (this.canWrite(stack, datum)) { if (datum == null) { - var beTag = NBTHelper.getOrCreateCompound(stack, "BlockEntityTag"); - beTag.remove(BlockEntitySlate.TAG_PATTERN); - if (beTag.isEmpty()) { - NBTHelper.remove(stack, "BlockEntityTag"); - } + var beData = stack.get(DataComponents.BLOCK_ENTITY_DATA); + beData.update(tag -> { + tag.remove(BlockEntitySlate.TAG_PATTERN); + }); + + if(beData.isEmpty()) + stack.remove(DataComponents.BLOCK_ENTITY_DATA); } else if (datum instanceof PatternIota pat) { - var beTag = NBTHelper.getOrCreateCompound(stack, "BlockEntityTag"); - beTag.put(BlockEntitySlate.TAG_PATTERN, pat.getPattern().serializeToNBT()); + stack.update(DataComponents.BLOCK_ENTITY_DATA, CustomData.of(new CompoundTag()), data -> { + data.update(tag -> + tag.put(BlockEntitySlate.TAG_PATTERN, HexPattern.CODEC + .encodeStart(NbtOps.INSTANCE, pat.getPattern()) + .getOrThrow() + ) + ); + return data; + }); } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java index b7521f7619..9949f9b184 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java @@ -5,7 +5,9 @@ import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.ChatFormatting; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; @@ -17,28 +19,14 @@ import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; +import java.util.Collections; +import java.util.HashMap; import java.util.List; import java.util.stream.Stream; import static at.petrak.hexcasting.common.items.storage.ItemFocus.NUM_VARIANTS; public class ItemSpellbook extends Item implements IotaHolderItem, VariantItem { - public static String TAG_SELECTED_PAGE = "page_idx"; - // this is a CompoundTag of string numerical keys to SpellData - // it is 1-indexed, so that 0/0 can be the special case of "it is empty" - public static String TAG_PAGES = "pages"; - - // this stores the names of pages, to be restored when you scroll - // it is 1-indexed, and the 0-case for TAG_PAGES will be treated as 1 - public static String TAG_PAGE_NAMES = "page_names"; - - // this stores the sealed status of each page, to be restored when you scroll - // it is 1-indexed, and the 0-case for TAG_PAGES will be treated as 1 - public static String TAG_SEALED = "sealed_pages"; - - // this stores which variant of the spellbook should be rendered - public static final String TAG_VARIANT = "variant"; - public static final int MAX_PAGES = 64; public ItemSpellbook(Properties properties) { @@ -46,12 +34,11 @@ public ItemSpellbook(Properties properties) { } @Override - public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltip, - TooltipFlag isAdvanced) { + public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag isAdvanced) { boolean sealed = isSealed(stack); boolean empty = false; - if (NBTHelper.hasNumber(stack, TAG_SELECTED_PAGE)) { - var pageIdx = NBTHelper.getInt(stack, TAG_SELECTED_PAGE); + if (stack.has(HexDataComponents.SELECTED_PAGE)) { + var pageIdx = stack.get(HexDataComponents.SELECTED_PAGE); int highest = highestPage(stack); if (highest != 0) { if (sealed) { @@ -74,7 +61,7 @@ public void appendHoverText(ItemStack stack, @Nullable Level level, List()); + if (stack.has(DataComponents.CUSTOM_NAME)) { + names.put(nameKey, stack.getHoverName()); + stack.set(HexDataComponents.PAGE_NAMES, names); } else { names.remove(nameKey); + stack.set(HexDataComponents.PAGE_NAMES, names); } } public static boolean arePagesEmpty(ItemStack stack) { - CompoundTag tag = NBTHelper.getCompound(stack, TAG_PAGES); - return tag == null || tag.isEmpty(); + var pages = stack.get(HexDataComponents.PAGES); + return pages == null || pages.isEmpty(); } @Override - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { + public @Nullable Iota readIota(ItemStack stack) { int idx = getPage(stack, 1); var key = String.valueOf(idx); - var tag = NBTHelper.getCompound(stack, TAG_PAGES); - if (tag != null && tag.contains(key, Tag.TAG_COMPOUND)) { - return tag.getCompound(key); + var pages = stack.get(HexDataComponents.PAGES); + if (pages != null && pages.containsKey(key)) { + return pages.get(key); } else { return null; } @@ -146,30 +134,42 @@ public void writeDatum(ItemStack stack, Iota datum) { int idx = getPage(stack, 1); var key = String.valueOf(idx); - CompoundTag pages = NBTHelper.getCompound(stack, TAG_PAGES); + + var pages = stack.get(HexDataComponents.PAGES); + if (pages != null) { if (datum == null) { pages.remove(key); - NBTHelper.remove(NBTHelper.getCompound(stack, TAG_SEALED), key); + stack.set(HexDataComponents.PAGES, pages); + var seals = stack.get(HexDataComponents.PAGE_SEALS); + if(seals != null) + seals.remove(key); } else { - pages.put(key, IotaType.serialize(datum)); + pages.put(key, datum); + stack.set(HexDataComponents.PAGES, pages); } if (pages.isEmpty()) { - NBTHelper.remove(stack, TAG_PAGES); + stack.remove(HexDataComponents.PAGES); } } else if (datum != null) { - NBTHelper.getOrCreateCompound(stack, TAG_PAGES).put(key, IotaType.serialize(datum)); + var map = new HashMap(); + map.put(key, datum); + stack.set(HexDataComponents.PAGES, map); } else { - NBTHelper.remove(NBTHelper.getCompound(stack, TAG_SEALED), key); + var seals = stack.get(HexDataComponents.PAGE_SEALS); + if(seals != null) + seals.remove(key); } } public static int getPage(ItemStack stack, int ifEmpty) { if (arePagesEmpty(stack)) { return ifEmpty; - } else if (NBTHelper.hasNumber(stack, TAG_SELECTED_PAGE)) { - int index = NBTHelper.getInt(stack, TAG_SELECTED_PAGE); + } else if (stack.has(HexDataComponents.SELECTED_PAGE)) { + var index = stack.get(HexDataComponents.SELECTED_PAGE); + if(index == null) + return 1; if (index == 0) { index = 1; } @@ -183,18 +183,18 @@ public static void setSealed(ItemStack stack, boolean sealed) { int index = getPage(stack, 1); String nameKey = String.valueOf(index); - CompoundTag names = NBTHelper.getOrCreateCompound(stack, TAG_SEALED); + var names = stack.getOrDefault(HexDataComponents.PAGE_SEALS, new HashMap()); if (!sealed) { names.remove(nameKey); } else { - names.putBoolean(nameKey, true); + names.put(nameKey, true); } if (names.isEmpty()) { - NBTHelper.remove(stack, TAG_SEALED); + stack.remove(HexDataComponents.PAGE_SEALS); } else { - NBTHelper.putCompound(stack, TAG_SEALED, names); + stack.set(HexDataComponents.PAGE_SEALS, names); } } @@ -203,16 +203,19 @@ public static boolean isSealed(ItemStack stack) { int index = getPage(stack, 1); String nameKey = String.valueOf(index); - CompoundTag names = NBTHelper.getCompound(stack, TAG_SEALED); - return NBTHelper.getBoolean(names, nameKey); + var seals = stack.get(HexDataComponents.PAGE_SEALS); + if(seals == null) + return false; + var v = seals.get(nameKey); + return v != null && v; } public static int highestPage(ItemStack stack) { - CompoundTag tag = NBTHelper.getCompound(stack, TAG_PAGES); - if (tag == null) { + var pages = stack.get(HexDataComponents.PAGES); + if (pages == null) { return 0; } - return tag.getAllKeys().stream().flatMap(s -> { + return pages.keySet().stream().flatMap(s -> { try { return Stream.of(Integer.parseInt(s)); } catch (NumberFormatException e) { @@ -228,16 +231,16 @@ public static int rotatePageIdx(ItemStack stack, boolean increase) { idx = Math.max(1, idx); } idx = Mth.clamp(idx, 0, MAX_PAGES); - NBTHelper.putInt(stack, TAG_SELECTED_PAGE, idx); + stack.set(HexDataComponents.SELECTED_PAGE, idx); - CompoundTag names = NBTHelper.getCompound(stack, TAG_PAGE_NAMES); + var names = stack.getOrDefault(HexDataComponents.PAGE_NAMES, Collections.emptyMap()); int shiftedIdx = Math.max(1, idx); String nameKey = String.valueOf(shiftedIdx); - String name = NBTHelper.getString(names, nameKey); + Component name = names.get(nameKey); if (name != null) { - stack.setHoverName(Component.Serializer.fromJson(name)); + stack.set(DataComponents.CUSTOM_NAME, name); } else { - stack.resetHoverName(); + stack.remove(DataComponents.CUSTOM_NAME); } return idx; @@ -251,6 +254,6 @@ public int numVariants() { @Override public void setVariant(ItemStack stack, int variant) { if (!isSealed(stack)) - NBTHelper.putInt(stack, TAG_VARIANT, clampVariant(variant)); + stack.set(HexDataComponents.VARIANT, clampVariant(variant)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java index 9e867cc250..2cc1ec3033 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -21,20 +22,13 @@ public class ItemThoughtKnot extends Item implements IotaHolderItem { public static final ResourceLocation WRITTEN_PRED = modLoc("written"); - public static final String TAG_DATA = "data"; - public ItemThoughtKnot(Properties properties) { super(properties); } - @Override - public @Nullable CompoundTag readIotaTag(ItemStack stack) { - return NBTHelper.getCompound(stack, TAG_DATA); - } - @Override public boolean writeable(ItemStack stack) { - return !NBTHelper.contains(stack, TAG_DATA); + return !stack.has(HexDataComponents.IOTA); } @Override @@ -45,12 +39,12 @@ public boolean canWrite(ItemStack stack, @Nullable Iota iota) { @Override public void writeDatum(ItemStack stack, @Nullable Iota iota) { if (iota != null) { - NBTHelper.putCompound(stack, TAG_DATA, IotaType.serialize(iota)); + stack.set(HexDataComponents.IOTA, iota); } } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, + public void appendHoverText(ItemStack pStack, TooltipContext context, List pTooltipComponents, TooltipFlag pIsAdvanced) { IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java index 3f70ddbd40..097c305ad9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java @@ -15,8 +15,6 @@ /** * On forge: these are setup in ForgeHexInit * On fabric: it's a mixin - *

- * TODO how to do this in 1.21 */ public class HexAttributes { public static void register(BiConsumer r) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java index 6e22920668..e29584155a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java @@ -80,7 +80,7 @@ public static BlockEntityType typeForQuenchedAllay(Blo private static BlockEntityType register(String id, BiFunction func, Block... blocks) { var ret = IXplatAbstractions.INSTANCE.createBlockEntityType(func, blocks); - var old = BLOCK_ENTITIES.put(new ResourceLocation(HexAPI.MOD_ID, id), ret); + var old = BLOCK_ENTITIES.put(ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, id), ret); if (old != null) { throw new IllegalArgumentException("Duplicate id " + id); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index 97e58a75e4..3f5e4e3f8e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -19,6 +19,7 @@ import at.petrak.hexcasting.common.blocks.decoration.*; import com.mojang.datafixers.util.Pair; import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.ColorRGBA; import net.minecraft.world.entity.EntityType; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; @@ -65,7 +66,7 @@ public static void registerBlockCreativeTab(Consumer r, CreativeModeTab t private static BlockBehaviour.Properties slateish() { return BlockBehaviour.Properties - .copy(Blocks.DEEPSLATE_TILES) + .ofFullCopy(Blocks.DEEPSLATE_TILES) .strength(4f, 4f); } @@ -85,7 +86,7 @@ private static BlockBehaviour.Properties akashicWoodyHard() { private static BlockBehaviour.Properties woodyHard(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LOG) + .ofFullCopy(Blocks.OAK_LOG) .mapColor(color) .sound(SoundType.WOOD) .strength(3f, 4f); @@ -97,7 +98,7 @@ private static BlockBehaviour.Properties edifiedWoody() { private static BlockBehaviour.Properties woody(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LOG) + .ofFullCopy(Blocks.OAK_LOG) .mapColor(color) .sound(SoundType.WOOD) .strength(2f); @@ -105,7 +106,7 @@ private static BlockBehaviour.Properties woody(MapColor color) { private static BlockBehaviour.Properties leaves(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LEAVES) + .ofFullCopy(Blocks.OAK_LEAVES) .strength(0.2F) .randomTicks() .sound(SoundType.GRASS) @@ -118,7 +119,7 @@ private static BlockBehaviour.Properties leaves(MapColor color) { // we have to make it emit light because otherwise it occludes itself and is always dark private static BlockBehaviour.Properties quenched() { return BlockBehaviour.Properties - .copy(Blocks.AMETHYST_BLOCK) + .ofFullCopy(Blocks.AMETHYST_BLOCK) .lightLevel($ -> 4) .noOcclusion(); } @@ -189,7 +190,7 @@ private static BlockBehaviour.Properties quenched() { public static final BlockAkashicBookshelf AKASHIC_BOOKSHELF = blockItem("akashic_bookshelf", new BlockAkashicBookshelf(akashicWoodyHard() .lightLevel(bs -> (bs.getValue(BlockAkashicBookshelf.HAS_BOOKS)) ? 4 : 0))); - public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_connector", + public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_ligature", new BlockAkashicLigature(akashicWoodyHard().lightLevel(bs -> 4))); public static final BlockQuenchedAllay QUENCHED_ALLAY = blockItem("quenched_allay", new BlockQuenchedAllay(quenched())); @@ -203,17 +204,17 @@ private static BlockBehaviour.Properties quenched() { public static final Block SLATE_BRICKS = blockItem("slate_bricks", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_BRICKS_SMALL = blockItem("slate_bricks_small", new Block(slateish().strength(2f, 4f))); public static final RotatedPillarBlock SLATE_PILLAR = blockItem("slate_pillar", new RotatedPillarBlock(slateish().strength(2f, 4f))); - public static final SandBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", - new SandBlock(0xff_b38ef3, BlockBehaviour.Properties.copy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) + public static final ColoredFallingBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", + new ColoredFallingBlock(new ColorRGBA(0xb38ef3_ff), BlockBehaviour.Properties.ofFullCopy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) .strength(0.5f).sound(SoundType.SAND))); public static final AmethystBlock AMETHYST_TILES = blockItem("amethyst_tiles", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final AmethystBlock AMETHYST_BRICKS = blockItem("amethyst_bricks", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final AmethystBlock AMETHYST_BRICKS_SMALL = blockItem("amethyst_bricks_small", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final BlockAmethystDirectional AMETHYST_PILLAR = blockItem("amethyst_pillar", - new BlockAmethystDirectional(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new BlockAmethystDirectional(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final Block SLATE_AMETHYST_TILES = blockItem("slate_amethyst_tiles", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_AMETHYST_BRICKS = blockItem("slate_amethyst_bricks", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_AMETHYST_BRICKS_SMALL = blockItem("slate_amethyst_bricks_small", new Block(slateish().strength(2f, 4f))); @@ -275,8 +276,7 @@ private static BlockBehaviour.Properties quenched() { public static final ButtonBlock EDIFIED_BUTTON = blockItem("edified_button", new BlockHexWoodButton(edifiedWoody().noOcclusion().noCollission())); public static final PressurePlateBlock EDIFIED_PRESSURE_PLATE = blockItem("edified_pressure_plate", - new BlockHexPressurePlate(PressurePlateBlock.Sensitivity.EVERYTHING, - edifiedWoody().noOcclusion().noCollission())); + new BlockHexPressurePlate(edifiedWoody().noOcclusion().noCollission())); public static final BlockAkashicLeaves AMETHYST_EDIFIED_LEAVES = blockItem("amethyst_edified_leaves", new BlockAkashicLeaves(leaves(MapColor.COLOR_PURPLE))); public static final BlockAkashicLeaves AVENTURINE_EDIFIED_LEAVES = blockItem("aventurine_edified_leaves", diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java index 05f06de4e8..391b9cac1b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java @@ -12,6 +12,6 @@ public class HexConfiguredFeatures { public static final ResourceKey> CITRINE_EDIFIED_TREE = createKey("citrine_edified_tree"); private static ResourceKey> createKey(String name) { - return ResourceKey.create(Registries.CONFIGURED_FEATURE, new ResourceLocation(HexAPI.MOD_ID, name)); + return ResourceKey.create(Registries.CONFIGURED_FEATURE, ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, name)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java index 03d8b26615..07c1a08bcd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java @@ -24,8 +24,9 @@ public static void registerCreativeTabs(BiConsumer new ItemStack(HexItems.SPELLBOOK))); + // TODO port: check creative tab icon display public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 7) - .icon(() -> ItemScroll.withPerWorldPattern(new ItemStack(HexItems.SCROLL_LARGE),""))); + .icon(() -> new ItemStack(HexItems.SCROLL_LARGE))); private static CreativeModeTab register(String name, CreativeModeTab.Builder tabBuilder) { var tab = tabBuilder.title(Component.translatable("itemGroup.hexcasting." + name)).build(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDamageTypes.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDamageTypes.java index 6eb7c8f1fa..6bd0f900fc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDamageTypes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDamageTypes.java @@ -9,8 +9,7 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexDamageTypes { - public static final ResourceKey OVERCAST = ResourceKey.create(Registries.DAMAGE_TYPE, modLoc( - "overcast")); + public static final ResourceKey OVERCAST = ResourceKey.create(Registries.DAMAGE_TYPE, modLoc("overcast")); public static void bootstrap(BootstrapContext ctx) { ctx.register(OVERCAST, new DamageType( diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java new file mode 100644 index 0000000000..9c81dff7c9 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java @@ -0,0 +1,165 @@ +package at.petrak.hexcasting.common.lib; + +import at.petrak.hexcasting.api.casting.ActionRegistryEntry; +import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.casting.iota.IotaType; +import at.petrak.hexcasting.api.casting.math.HexPattern; +import at.petrak.hexcasting.api.pigment.FrozenPigment; +import com.mojang.serialization.Codec; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.ComponentSerialization; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.Unit; + +import java.util.*; +import java.util.function.BiConsumer; + +import static at.petrak.hexcasting.api.HexAPI.modLoc; + +public class HexDataComponents { + public static void registerDataComponents(BiConsumer, ResourceLocation> r) { + for (var e : DATA_COMPONENTS.entrySet()) { + r.accept(e.getValue(), e.getKey()); + } + } + + private static final Map> DATA_COMPONENTS = new LinkedHashMap<>(); + + public static final DataComponentType PATTERN = register("pattern", + DataComponentType.builder() + .persistent(HexPattern.CODEC) + .networkSynchronized(HexPattern.STREAM_CODEC) + .build()); + public static final DataComponentType> ACTION = register("op_id", + DataComponentType.>builder() + .persistent(ResourceKey.codec(HexRegistries.ACTION)) + .networkSynchronized(ResourceKey.streamCodec(HexRegistries.ACTION)) + .build()); + public static final DataComponentType NEEDS_PURCHASE = register("needs_purchase", + DataComponentType.builder() + .networkSynchronized(StreamCodec.unit(Unit.INSTANCE)) + .build()); + /** + * If this datacomponent is set on the item, we ignore the rest of the item and render this as if it were of the + * {@link at.petrak.hexcasting.api.casting.iota.IotaType IotaType} given by the resource location. + *

+ * This is not useful to the player at all. + */ + public static final DataComponentType>> VISUAL_OVERRIDE = register("visual_override", + DataComponentType.>>builder() + .networkSynchronized(ByteBufCodecs.optional(ByteBufCodecs.registry(HexRegistries.IOTA_TYPE))) + .build()); + public static final DataComponentType VARIANT = register("variant", + DataComponentType.builder() + .persistent(Codec.intRange(0, Integer.MAX_VALUE)) + .networkSynchronized(ByteBufCodecs.VAR_INT) + .build()); + public static final DataComponentType SEALED = register("sealed", + DataComponentType.builder() + .persistent(Codec.unit(Unit.INSTANCE)) + .networkSynchronized(StreamCodec.unit(Unit.INSTANCE)) + .build()); + // TODO port: Data components must implement equals and hashCode. Keep in mind they must also be immutable + public static final DataComponentType IOTA = register("iota", + DataComponentType.builder() + .persistent(IotaType.TYPED_CODEC) + .networkSynchronized(IotaType.TYPED_STREAM_CODEC) + .build()); + + public static final DataComponentType> PATTERNS = register("patterns", + DataComponentType.>builder() + .persistent(IotaType.TYPED_CODEC.listOf()) + .networkSynchronized(IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list())) + .build()); + public static final DataComponentType MEDIA = register("media", + DataComponentType.builder() + .persistent(Codec.LONG) + .networkSynchronized(ByteBufCodecs.VAR_LONG) + .build()); + public static final DataComponentType MEDIA_MAX = register("start_media", + DataComponentType.builder() + .persistent(Codec.LONG) + .networkSynchronized(ByteBufCodecs.VAR_LONG) + .build()); + public static final DataComponentType HEX_NAME = register("hex_name", + DataComponentType.builder() + .persistent(Codec.STRING) + .networkSynchronized(ByteBufCodecs.STRING_UTF8) + .build()); + + public static final DataComponentType PIGMENT = register("pigment", + DataComponentType.builder() + .persistent(FrozenPigment.CODEC) + .networkSynchronized(FrozenPigment.STREAM_CODEC) + .build()); + + public static final DataComponentType ABACUS_VALUE = register("abacus_value", + DataComponentType.builder() + .persistent(Codec.DOUBLE) + .networkSynchronized(ByteBufCodecs.DOUBLE) + .build()); + + public static final DataComponentType SELECTED_PAGE = register("page_idx", + DataComponentType.builder() + .persistent(Codec.INT) + .networkSynchronized(ByteBufCodecs.INT) + .build()); + + public static final DataComponentType> PAGES = register("pages", + DataComponentType.>builder() + .persistent(Codec.unboundedMap(Codec.STRING, IotaType.TYPED_CODEC)) + .networkSynchronized(ByteBufCodecs.map( + HashMap::newHashMap, + ByteBufCodecs.STRING_UTF8, + IotaType.TYPED_STREAM_CODEC + )) + .build()); + + public static final DataComponentType> PAGE_NAMES = register("page_names", + DataComponentType.>builder() + .persistent(Codec.unboundedMap(Codec.STRING, ComponentSerialization.CODEC)) + .networkSynchronized(ByteBufCodecs.map( + HashMap::newHashMap, + ByteBufCodecs.STRING_UTF8, + ComponentSerialization.STREAM_CODEC + )) + .build()); + + public static final DataComponentType> PAGE_SEALS = register("sealed_pages", + DataComponentType.>builder() + .persistent(Codec.unboundedMap(Codec.STRING, Codec.BOOL)) + .networkSynchronized(ByteBufCodecs.map( + HashMap::newHashMap, + ByteBufCodecs.STRING_UTF8, + ByteBufCodecs.BOOL + )) + .build()); + + public static final DataComponentType> MEDIA_EXTRACTIONS = register("media_extractions", + DataComponentType.>builder() + .persistent(Codec.LONG.listOf()) + .networkSynchronized(ByteBufCodecs.VAR_LONG.apply(ByteBufCodecs.list())) + .build()); + + public static final DataComponentType> MEDIA_INSERTIONS = register("media_insertions", + DataComponentType.>builder() + .persistent(Codec.LONG.listOf()) + .networkSynchronized(ByteBufCodecs.VAR_LONG.apply(ByteBufCodecs.list())) + .build()); + + + private static DataComponentType register( + String id, + DataComponentType lift + ) { + var old = DATA_COMPONENTS.put(modLoc(id), lift); + if (old != null) { + throw new IllegalArgumentException("Typo? Duplicate id " + id); + } + return lift; + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java index aa05c96c8a..6a727536af 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java @@ -21,8 +21,12 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EquipmentSlot; +import net.minecraft.world.entity.EquipmentSlotGroup; +import net.minecraft.world.entity.ai.attributes.AttributeModifier; +import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.food.FoodProperties; import net.minecraft.world.item.*; +import net.minecraft.world.item.component.ItemAttributeModifiers; import org.jetbrains.annotations.Nullable; import java.util.*; @@ -40,14 +44,15 @@ public static void registerItems(BiConsumer r) { } public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeModeTab tab) { - if (tab == HexCreativeTabs.SCROLLS) generateScrollEntries(); - for (var item : ITEM_TABS.getOrDefault(tab, List.of())) { + if (tab == HexCreativeTabs.SCROLLS) + generateScrollEntries(r); + for (var item : ITEM_TABS.getOrDefault(tab, Collections.emptySet())) { item.register(r); } } private static final Map ITEMS = new LinkedHashMap<>(); // preserve insertion order - private static final Map> ITEM_TABS = new LinkedHashMap<>(); + private static final Map> ITEM_TABS = new LinkedHashMap<>(); public static final Item AMETHYST_DUST = make("amethyst_dust", new Item(props())); @@ -86,7 +91,19 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemArtifact ARTIFACT = make("artifact", new ItemArtifact(unstackable().rarity(Rarity.RARE))); public static final ItemJewelerHammer JEWELER_HAMMER = make("jeweler_hammer", - new ItemJewelerHammer(Tiers.IRON, 0, -2.8F, props().stacksTo(1).defaultDurability(Tiers.DIAMOND.getUses()))); + new ItemJewelerHammer(Tiers.IRON, props() + .stacksTo(1) + .durability(Tiers.DIAMOND.getUses()) + .attributes(ItemAttributeModifiers.builder() + .add(Attributes.ATTACK_SPEED, new AttributeModifier( + modLoc("jeweler_hammer_speed"), + -2.8, + AttributeModifier.Operation.ADD_VALUE + ), EquipmentSlotGroup.ANY) + .build() + ) + ) + ); public static final ItemScroll SCROLL_SMOL = make("scroll_small", new ItemScroll(props(), 1)); public static final ItemScroll SCROLL_MEDIUM = make("scroll_medium", new ItemScroll(props(), 2)); @@ -140,7 +157,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod // BUFF SANDVICH public static final Item SUBMARINE_SANDWICH = make("sub_sandwich", - new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationMod(1.2f).build()))); + new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); public static final ItemLoreFragment LORE_FRAGMENT = make("lore_fragment", new ItemLoreFragment(unstackable() @@ -149,7 +166,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemCreativeUnlocker CREATIVE_UNLOCKER = make("creative_unlocker", new ItemCreativeUnlocker(unstackable() .rarity(Rarity.EPIC) - .food(new FoodProperties.Builder().nutrition(20).saturationMod(1f).alwaysEat().build()))); + .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); // @@ -161,18 +178,18 @@ public static Item.Properties unstackable() { return props().stacksTo(1); } - private static void generateScrollEntries() { + private static void generateScrollEntries(CreativeModeTab.Output r) { var keyList = new ArrayList>(); Registry regi = IXplatAbstractions.INSTANCE.getActionRegistry(); for (var key : regi.registryKeySet()) if (HexUtils.isOfTag(regi, key, HexTags.Actions.PER_WORLD_PATTERN)) keyList.add(key); - keyList.sort( (a, b) -> a.location().compareTo(b.location()) ); + keyList.sort(Comparator.comparing(ResourceKey::location)); for (var key : keyList) { - addToTab(() -> ItemScroll.withPerWorldPattern( - new ItemStack(HexItems.SCROLL_LARGE), - key.location().toString() - ),HexCreativeTabs.SCROLLS); + r.accept(ItemScroll.withPerWorldPattern( + new ItemStack(HexItems.SCROLL_LARGE), + key + )); } } @@ -182,7 +199,7 @@ private static T make(ResourceLocation id, T item, @Nullable Cr throw new IllegalArgumentException("Typo? Duplicate id " + id); } if (tab != null) { - ITEM_TABS.computeIfAbsent(tab, t -> new ArrayList<>()).add(new TabEntry.ItemEntry(item)); + ITEM_TABS.computeIfAbsent(tab, t -> new HashSet<>()).add(new TabEntry.ItemEntry(item)); } return item; } @@ -197,13 +214,16 @@ private static T make(String id, T item) { private static Supplier addToTab(Supplier stack, CreativeModeTab tab) { var memoised = Suppliers.memoize(stack::get); - ITEM_TABS.computeIfAbsent(tab, t -> new ArrayList<>()).add(new TabEntry.StackEntry(memoised)); + ITEM_TABS.computeIfAbsent(tab, t -> new HashSet<>()).add(new TabEntry.StackEntry(memoised)); return memoised; } private static abstract class TabEntry { abstract void register(CreativeModeTab.Output r); + @Override + public abstract int hashCode(); + static class ItemEntry extends TabEntry { private final Item item; @@ -215,6 +235,11 @@ static class ItemEntry extends TabEntry { void register(CreativeModeTab.Output r) { r.accept(item); } + + @Override + public int hashCode() { + return Objects.hashCode(item); + } } static class StackEntry extends TabEntry { @@ -228,6 +253,11 @@ static class StackEntry extends TabEntry { void register(CreativeModeTab.Output r) { r.accept(stack.get()); } + + @Override + public int hashCode() { + return Objects.hashCode(stack); + } } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java index 409f5c979c..a8b813d5ba 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.common.loot.AddHexToAncientCypherFunc; import at.petrak.hexcasting.common.loot.AmethystReducerFunc; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction; import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import java.util.LinkedHashMap; @@ -13,22 +14,25 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexLootFunctions { - public static void registerSerializers(BiConsumer r) { + public static void registerSerializers(BiConsumer, ResourceLocation> r) { for (var e : LOOT_FUNCS.entrySet()) { r.accept(e.getValue(), e.getKey()); } } - private static final Map LOOT_FUNCS = new LinkedHashMap<>(); + private static final Map> LOOT_FUNCS = new LinkedHashMap<>(); - public static final LootItemFunctionType PATTERN_SCROLL = register("pattern_scroll", - new LootItemFunctionType(new AddPerWorldPatternToScrollFunc.Serializer())); - public static final LootItemFunctionType HEX_CYPHER = register("hex_cypher", - new LootItemFunctionType(new AddHexToAncientCypherFunc.Serializer())); - public static final LootItemFunctionType AMETHYST_SHARD_REDUCER = register("amethyst_shard_reducer", - new LootItemFunctionType(new AmethystReducerFunc.Serializer())); + public static final LootItemFunctionType PATTERN_SCROLL = register("pattern_scroll", + new LootItemFunctionType<>(AddPerWorldPatternToScrollFunc.CODEC)); + public static final LootItemFunctionType HEX_CYPHER = register("hex_cypher", + new LootItemFunctionType<>(AddHexToAncientCypherFunc.CODEC)); + public static final LootItemFunctionType AMETHYST_SHARD_REDUCER = register("amethyst_shard_reducer", + new LootItemFunctionType<>(AmethystReducerFunc.CODEC)); - private static LootItemFunctionType register(String id, LootItemFunctionType lift) { + private static LootItemFunctionType register( + String id, + LootItemFunctionType lift + ) { var old = LOOT_FUNCS.put(modLoc(id), lift); if (old != null) { throw new IllegalArgumentException("Typo? Duplicate id " + id); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index 6398bfea27..2f476ef1ef 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -1,6 +1,8 @@ package at.petrak.hexcasting.common.lib; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.misc.HexMobEffect; +import net.minecraft.core.Holder; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffect; import net.minecraft.world.effect.MobEffectCategory; @@ -23,12 +25,12 @@ public static void register(BiConsumer r) { public static final MobEffect ENLARGE_GRID = make("enlarge_grid", new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, "d4afaf0f-df37-4253-9fa7-029e8e4415d9", - 0.25, AttributeModifier.Operation.MULTIPLY_TOTAL); + .addAttributeModifier(Holder.direct(HexAttributes.GRID_ZOOM), HexAPI.modLoc("enlarge_grid"), + 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); public static final MobEffect SHRINK_GRID = make("shrink_grid", new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, "1ce492a9-8bf5-4091-a482-c6d9399e448a", - -0.2, AttributeModifier.Operation.MULTIPLY_TOTAL); + .addAttributeModifier(Holder.direct(HexAttributes.GRID_ZOOM), HexAPI.modLoc("shrink_grid"), + -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); private static T make(String id, T effect) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java index e86409e77c..91145ee691 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java @@ -1,8 +1,12 @@ package at.petrak.hexcasting.common.lib; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffectInstance; import net.minecraft.world.item.alchemy.Potion; +import net.minecraft.world.item.alchemy.PotionBrewing; import net.minecraft.world.item.alchemy.Potions; import net.minecraft.world.item.Items; @@ -11,43 +15,37 @@ import java.util.function.BiConsumer; import static at.petrak.hexcasting.api.HexAPI.modLoc; -import at.petrak.hexcasting.mixin.accessor.AccessorPotionBrewing; public class HexPotions { - public static void register(BiConsumer r) { - for (var e : POTIONS.entrySet()) { - r.accept(e.getValue(), e.getKey()); - } - HexPotions.addRecipes(); - } - private static final Map POTIONS = new LinkedHashMap<>(); public static final Potion ENLARGE_GRID = make("enlarge_grid", - new Potion("enlarge_grid", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 3600))); + new Potion("enlarge_grid", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 3600))); public static final Potion ENLARGE_GRID_LONG = make("enlarge_grid_long", - new Potion("enlarge_grid_long", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 9600))); + new Potion("enlarge_grid_long", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 9600))); public static final Potion ENLARGE_GRID_STRONG = make("enlarge_grid_strong", - new Potion("enlarge_grid_strong", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 1800, 1))); + new Potion("enlarge_grid_strong", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 1800, 1))); public static final Potion SHRINK_GRID = make("shrink_grid", - new Potion("shrink_grid", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 3600))); + new Potion("shrink_grid", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 3600))); public static final Potion SHRINK_GRID_LONG = make("shrink_grid_long", - new Potion("shrink_grid_long", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 9600))); + new Potion("shrink_grid_long", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 9600))); public static final Potion SHRINK_GRID_STRONG = make("shrink_grid_strong", - new Potion("shrink_grid_strong", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 1800, 1))); + new Potion("shrink_grid_strong", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 1800, 1))); + + public static void addRecipes(PotionBrewing.Builder builder, RegistryAccess registryAccess) { + var potionRegistry = registryAccess.registryOrThrow(Registries.POTION); - public static void addRecipes() { - AccessorPotionBrewing.addMix(Potions.AWKWARD, HexItems.AMETHYST_DUST, ENLARGE_GRID); - AccessorPotionBrewing.addMix(ENLARGE_GRID, Items.REDSTONE, ENLARGE_GRID_LONG); - AccessorPotionBrewing.addMix(ENLARGE_GRID, Items.GLOWSTONE_DUST, ENLARGE_GRID_STRONG); + builder.addMix(Potions.AWKWARD, HexItems.AMETHYST_DUST, potionRegistry.wrapAsHolder(ENLARGE_GRID)); + builder.addMix(potionRegistry.wrapAsHolder(ENLARGE_GRID), Items.REDSTONE, potionRegistry.wrapAsHolder(ENLARGE_GRID_LONG)); + builder.addMix(potionRegistry.wrapAsHolder(ENLARGE_GRID), Items.GLOWSTONE_DUST, potionRegistry.wrapAsHolder(ENLARGE_GRID_STRONG)); - AccessorPotionBrewing.addMix(ENLARGE_GRID, Items.FERMENTED_SPIDER_EYE, SHRINK_GRID); - AccessorPotionBrewing.addMix(ENLARGE_GRID_LONG, Items.FERMENTED_SPIDER_EYE, SHRINK_GRID_LONG); - AccessorPotionBrewing.addMix(ENLARGE_GRID_STRONG, Items.FERMENTED_SPIDER_EYE, SHRINK_GRID_STRONG); + builder.addMix(potionRegistry.wrapAsHolder(ENLARGE_GRID), Items.FERMENTED_SPIDER_EYE, potionRegistry.wrapAsHolder(SHRINK_GRID)); + builder.addMix(potionRegistry.wrapAsHolder(ENLARGE_GRID_LONG), Items.FERMENTED_SPIDER_EYE, potionRegistry.wrapAsHolder(SHRINK_GRID_LONG)); + builder.addMix(potionRegistry.wrapAsHolder(ENLARGE_GRID_STRONG), Items.FERMENTED_SPIDER_EYE, potionRegistry.wrapAsHolder(SHRINK_GRID_STRONG)); - AccessorPotionBrewing.addMix(SHRINK_GRID, Items.REDSTONE, SHRINK_GRID_LONG); - AccessorPotionBrewing.addMix(SHRINK_GRID, Items.GLOWSTONE_DUST, SHRINK_GRID_STRONG); + builder.addMix(potionRegistry.wrapAsHolder(SHRINK_GRID), Items.REDSTONE, potionRegistry.wrapAsHolder(SHRINK_GRID_LONG)); + builder.addMix(potionRegistry.wrapAsHolder(SHRINK_GRID), Items.GLOWSTONE_DUST, potionRegistry.wrapAsHolder(SHRINK_GRID_STRONG)); } private static T make(String id, T potion) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java index e529e9b889..be0851967a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java @@ -6,6 +6,8 @@ import at.petrak.hexcasting.api.casting.eval.sideeffects.EvalSound; import at.petrak.hexcasting.api.casting.eval.vm.ContinuationFrame; import at.petrak.hexcasting.api.casting.iota.IotaType; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; @@ -18,4 +20,6 @@ public class HexRegistries { public static final ResourceKey> ARITHMETIC = ResourceKey.createRegistryKey(modLoc("arithmetic")); public static final ResourceKey>> CONTINUATION_TYPE = ResourceKey.createRegistryKey(modLoc("continuation_type")); public static final ResourceKey> EVAL_SOUND = ResourceKey.createRegistryKey(modLoc("eval_sound")); + public static final ResourceKey>> STATE_INGREDIENT = ResourceKey.createRegistryKey(modLoc("state_ingredient")); + public static final ResourceKey>> BRAINSWEEPEE_INGREDIENT = ResourceKey.createRegistryKey(modLoc("brainsweepee_ingredient")); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java index e178b1e011..634a0b4ef5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java @@ -423,7 +423,7 @@ public class HexActions { // == Consts == public static final ActionRegistryEntry CONST$NULL = make("const/null", - new ActionRegistryEntry(HexPattern.fromAngles("d", HexDir.EAST), Action.makeConstantOp(new NullIota()))); + new ActionRegistryEntry(HexPattern.fromAngles("d", HexDir.EAST), Action.makeConstantOp(NullIota.INSTANCE))); public static final ActionRegistryEntry CONST$TRUE = make("const/true", new ActionRegistryEntry(HexPattern.fromAngles("aqae", diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java index 0526e9ac56..e103d7720e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java @@ -19,18 +19,9 @@ @ParametersAreNonnullByDefault public class HexIotaTypes { public static final Registry> REGISTRY = IXplatAbstractions.INSTANCE.getIotaTypeRegistry(); - public static final String - KEY_TYPE = HexAPI.MOD_ID + ":type", - KEY_DATA = HexAPI.MOD_ID + ":data"; public static final int MAX_SERIALIZATION_DEPTH = 256; public static final int MAX_SERIALIZATION_TOTAL = 1024; - public static void registerTypes(BiConsumer, ResourceLocation> r) { - for (var e : TYPES.entrySet()) { - r.accept(e.getValue(), e.getKey()); - } - } - private static final Map> TYPES = new LinkedHashMap<>(); public static final IotaType NULL = type("null", NullIota.TYPE); @@ -43,6 +34,12 @@ public static void registerTypes(BiConsumer, ResourceLocation> r) { public static final IotaType VEC3 = type("vec3", Vec3Iota.TYPE); public static final IotaType CONTINUATION = type("continuation", ContinuationIota.TYPE); + public static void registerTypes(BiConsumer, ResourceLocation> r) { + for (var e : TYPES.entrySet()) { + r.accept(e.getValue(), e.getKey()); + } + } + private static > T type(String name, T type) { var old = TYPES.put(modLoc(name), type); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java index aa0fa4af2b..a82f688389 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java @@ -4,15 +4,13 @@ import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.casting.math.HexDir; import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.mod.HexConfig; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.common.items.magic.ItemAncientCypher; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexLootFunctions; -import com.google.gson.JsonDeserializationContext; -import com.google.gson.JsonObject; -import com.google.gson.JsonSerializationContext; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.util.RandomSource; import net.minecraft.nbt.ListTag; import net.minecraft.nbt.CompoundTag; @@ -22,7 +20,11 @@ import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; +import java.util.Arrays; import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; + import com.mojang.datafixers.util.Pair; /** @@ -32,7 +34,12 @@ * is used on both sides */ public class AddHexToAncientCypherFunc extends LootItemConditionalFunction { - public AddHexToAncientCypherFunc(LootItemCondition[] lootItemConditions) { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( + p_344674_ -> commonFields(p_344674_) + .apply(p_344674_, AddHexToAncientCypherFunc::new) + ); + + public AddHexToAncientCypherFunc(List lootItemConditions) { super(lootItemConditions); } @@ -41,20 +48,15 @@ public AddHexToAncientCypherFunc(LootItemCondition[] lootItemConditions) { */ public static ItemStack doStatic(ItemStack stack, RandomSource rand) { var hex = LOOT_HEXES.get(rand.nextInt(LOOT_HEXES.size())); - var patsTag = new ListTag(); - for (var patString : hex.getSecond()){ - var pieces = patString.split(" "); - var pat = HexPattern.fromAngles(pieces[1],HexDir.fromString(pieces[0])); - patsTag.add(IotaType.serialize(new PatternIota(pat))); - } - - var tag = new CompoundTag(); - tag.putString(ItemAncientCypher.TAG_HEX_NAME, hex.getFirst()); - tag.putLong(ItemAncientCypher.TAG_MEDIA, 32*MediaConstants.SHARD_UNIT); - tag.putLong(ItemAncientCypher.TAG_MAX_MEDIA, 32*MediaConstants.SHARD_UNIT); - tag.putInt(VariantItem.TAG_VARIANT, rand.nextInt(8)); - tag.put(ItemAncientCypher.TAG_PATTERNS, patsTag); - stack.getOrCreateTag().merge(tag); + + stack.set(HexDataComponents.HEX_NAME, hex.getFirst()); + stack.set(HexDataComponents.MEDIA, 32 * MediaConstants.SHARD_UNIT); + stack.set(HexDataComponents.MEDIA_MAX, 32 * MediaConstants.SHARD_UNIT); + stack.set(HexDataComponents.VARIANT, rand.nextInt(8)); + stack.set(HexDataComponents.PATTERNS, Arrays.stream(hex.getSecond()).map(el -> { + var pieces = el.split(" "); + return new PatternIota(HexPattern.fromAngles(pieces[1],HexDir.fromString(pieces[0]))); + }).collect(Collectors.toList())); return stack; } @@ -65,23 +67,10 @@ protected ItemStack run(ItemStack stack, LootContext ctx) { } @Override - public LootItemFunctionType getType() { + public LootItemFunctionType getType() { return HexLootFunctions.HEX_CYPHER; } - public static class Serializer extends LootItemConditionalFunction.Serializer { - @Override - public void serialize(JsonObject json, AddHexToAncientCypherFunc value, JsonSerializationContext ctx) { - super.serialize(json, value, ctx); - } - - @Override - public AddHexToAncientCypherFunc deserialize(JsonObject object, JsonDeserializationContext ctx, - LootItemCondition[] conditions) { - return new AddHexToAncientCypherFunc(conditions); - } - } - // TODO: make this datapackable private static final List> LOOT_HEXES = List.of( new Pair<>("hexcasting.loot_hex.shatter", new String[] {"NORTH_EAST qaq","EAST aa","NORTH_EAST qaq","NORTH_EAST wa","EAST wqaawdd","EAST qaqqqqq"}), diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java index 0d45634db4..870714dd87 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java @@ -6,24 +6,25 @@ import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.items.storage.ItemScroll; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexLootFunctions; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonDeserializationContext; -import com.google.gson.JsonObject; -import com.google.gson.JsonSerializationContext; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.util.RandomSource; import net.minecraft.core.Registry; -import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.level.storage.loot.LootContext; +import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount; import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction; import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import java.util.ArrayList; +import java.util.List; /** * Slap a random per-world pattern on the scroll. @@ -32,7 +33,12 @@ * is used on both sides */ public class AddPerWorldPatternToScrollFunc extends LootItemConditionalFunction { - public AddPerWorldPatternToScrollFunc(LootItemCondition[] lootItemConditions) { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( + p_344674_ -> commonFields(p_344674_) + .apply(p_344674_, AddPerWorldPatternToScrollFunc::new) + ); + + public AddPerWorldPatternToScrollFunc(List lootItemConditions) { super(lootItemConditions); } @@ -49,8 +55,8 @@ public static ItemStack doStatic(ItemStack stack, RandomSource rand, ServerLevel } var patternKey = perWorldKeys.get(rand.nextInt(perWorldKeys.size())); var pat = PatternRegistryManifest.getCanonicalStrokesPerWorld(patternKey, overworld); - NBTHelper.putString(stack, ItemScroll.TAG_OP_ID, patternKey.location().toString()); - NBTHelper.put(stack, ItemScroll.TAG_PATTERN, pat.serializeToNBT()); + stack.set(HexDataComponents.ACTION, patternKey); + stack.set(HexDataComponents.PATTERN, pat); return stack; } @@ -60,20 +66,7 @@ protected ItemStack run(ItemStack stack, LootContext ctx) { } @Override - public LootItemFunctionType getType() { + public LootItemFunctionType getType() { return HexLootFunctions.PATTERN_SCROLL; } - - public static class Serializer extends LootItemConditionalFunction.Serializer { - @Override - public void serialize(JsonObject json, AddPerWorldPatternToScrollFunc value, JsonSerializationContext ctx) { - super.serialize(json, value, ctx); - } - - @Override - public AddPerWorldPatternToScrollFunc deserialize(JsonObject object, JsonDeserializationContext ctx, - LootItemCondition[] conditions) { - return new AddPerWorldPatternToScrollFunc(conditions); - } - } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java index cee38be6dd..26c9be0992 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java @@ -1,10 +1,9 @@ package at.petrak.hexcasting.common.loot; import at.petrak.hexcasting.common.lib.HexLootFunctions; -import com.google.gson.JsonDeserializationContext; -import com.google.gson.JsonObject; -import com.google.gson.JsonSerializationContext; -import net.minecraft.util.GsonHelper; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.storage.loot.LootContext; @@ -12,14 +11,28 @@ import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; +import java.util.List; + public class AmethystReducerFunc extends LootItemConditionalFunction { - public final double delta; + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( + p_344674_ -> commonFields(p_344674_) + .and( + Codec.DOUBLE.fieldOf("delta").forGetter(AmethystReducerFunc::getDelta) + ) + .apply(p_344674_, AmethystReducerFunc::new) + ); + + private final double delta; - public AmethystReducerFunc(LootItemCondition[] lootItemConditions, double delta) { + public AmethystReducerFunc(List lootItemConditions, double delta) { super(lootItemConditions); this.delta = delta; } + public double getDelta() { + return delta; + } + public static ItemStack doStatic(ItemStack stack, LootContext ctx, double amount) { if (stack.is(Items.AMETHYST_SHARD)) { stack.setCount((int) (stack.getCount() * (1 + amount))); @@ -33,22 +46,7 @@ protected ItemStack run(ItemStack stack, LootContext ctx) { } @Override - public LootItemFunctionType getType() { + public LootItemFunctionType getType() { return HexLootFunctions.AMETHYST_SHARD_REDUCER; } - - public static class Serializer extends LootItemConditionalFunction.Serializer { - @Override - public void serialize(JsonObject json, AmethystReducerFunc value, JsonSerializationContext ctx) { - super.serialize(json, value, ctx); - json.addProperty("delta", value.delta); - } - - @Override - public AmethystReducerFunc deserialize(JsonObject object, JsonDeserializationContext ctx, - LootItemCondition[] conditions) { - var delta = GsonHelper.getAsDouble(object, "delta"); - return new AmethystReducerFunc(conditions, delta); - } - } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/HexLootHandler.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/HexLootHandler.java index 5d38b52bda..a8d8679f15 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/HexLootHandler.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/HexLootHandler.java @@ -1,8 +1,11 @@ package at.petrak.hexcasting.common.loot; import com.google.common.collect.ImmutableList; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.RandomSource; +import net.minecraft.world.level.storage.loot.LootTable; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -24,51 +27,51 @@ public class HexLootHandler { // In places where it doesn't really make sense to have them lore-wise just put them rarely anyways // to make it less of a PITA for new players - new ScrollInjection(new ResourceLocation("minecraft", "chests/simple_dungeon"), 1), - new ScrollInjection(new ResourceLocation("minecraft", "chests/abandoned_mineshaft"), 1), - new ScrollInjection(new ResourceLocation("minecraft", "chests/bastion_other"), 1), - new ScrollInjection(new ResourceLocation("minecraft", "chests/nether_bridge"), 1), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/simple_dungeon"), 1), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/abandoned_mineshaft"), 1), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/bastion_other"), 1), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/nether_bridge"), 1), - new ScrollInjection(new ResourceLocation("minecraft", "chests/jungle_temple"), 2), - new ScrollInjection(new ResourceLocation("minecraft", "chests/desert_pyramid"), 2), - new ScrollInjection(new ResourceLocation("minecraft", "chests/village/village_cartographer"), 2), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/jungle_temple"), 2), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/desert_pyramid"), 2), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_cartographer"), 2), - new ScrollInjection(new ResourceLocation("minecraft", "chests/shipwreck_map"), 3), - new ScrollInjection(new ResourceLocation("minecraft", "chests/bastion_treasure"), 3), - new ScrollInjection(new ResourceLocation("minecraft", "chests/end_city_treasure"), 3), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/shipwreck_map"), 3), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/bastion_treasure"), 3), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/end_city_treasure"), 3), // ancient city chests have amethyst in them, thinking emoji - new ScrollInjection(new ResourceLocation("minecraft", "chests/ancient_city"), 4), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/ancient_city"), 4), // wonder what those pillagers are up to with those scrolls - new ScrollInjection(new ResourceLocation("minecraft", "chests/pillager_outpost"), 4), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/pillager_outpost"), 4), // if you manage to find one of these things you deserve a lot of scrolls - new ScrollInjection(new ResourceLocation("minecraft", "chests/woodland_mansion"), 5), - new ScrollInjection(new ResourceLocation("minecraft", "chests/stronghold_library"), 5) + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/woodland_mansion"), 5), + new ScrollInjection(ResourceLocation.fromNamespaceAndPath("minecraft", "chests/stronghold_library"), 5) ); public static final ImmutableList DEFAULT_LORE_INJECTS = ImmutableList.of( - new ResourceLocation("minecraft", "chests/simple_dungeon"), - new ResourceLocation("minecraft", "chests/abandoned_mineshaft"), - new ResourceLocation("minecraft", "chests/pillager_outpost"), - new ResourceLocation("minecraft", "chests/woodland_mansion"), - new ResourceLocation("minecraft", "chests/stronghold_library"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/simple_dungeon"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/abandoned_mineshaft"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/pillager_outpost"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/woodland_mansion"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/stronghold_library"), // >:) - new ResourceLocation("minecraft", "chests/village/village_desert_house"), - new ResourceLocation("minecraft", "chests/village/village_plains_house"), - new ResourceLocation("minecraft", "chests/village/village_savanna_house"), - new ResourceLocation("minecraft", "chests/village/village_snowy_house"), - new ResourceLocation("minecraft", "chests/village/village_taiga_house") + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_desert_house"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_plains_house"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_savanna_house"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_snowy_house"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/village/village_taiga_house") ); public static final ImmutableList DEFAULT_CYPHER_INJECTS = ImmutableList.of( - new ResourceLocation("minecraft", "chests/simple_dungeon"), - new ResourceLocation("minecraft", "chests/abandoned_mineshaft"), - new ResourceLocation("minecraft", "chests/stronghold_corridor"), - new ResourceLocation("minecraft", "chests/jungle_temple"), - new ResourceLocation("minecraft", "chests/desert_pyramid"), - new ResourceLocation("minecraft", "chests/ancient_city"), - new ResourceLocation("minecraft", "chests/nether_bridge") + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/simple_dungeon"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/abandoned_mineshaft"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/stronghold_corridor"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/jungle_temple"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/desert_pyramid"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/ancient_city"), + ResourceLocation.fromNamespaceAndPath("minecraft", "chests/nether_bridge") ); public static int getScrollCount(int range, RandomSource random) { @@ -79,7 +82,7 @@ public static int getScrollCount(int range, RandomSource random) { public static final double DEFAULT_LORE_CHANCE = 0.4; public static final double DEFAULT_CYPHER_CHANCE = 0.4; - public static final ResourceLocation TABLE_INJECT_AMETHYST_CLUSTER = modLoc("inject/amethyst_cluster"); + public static final ResourceKey TABLE_INJECT_AMETHYST_CLUSTER = ResourceKey.create(Registries.LOOT_TABLE, modLoc("inject/amethyst_cluster")); public record ScrollInjection(ResourceLocation injectee, int countRange) { } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java index d346979600..7dbfe1fa90 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java @@ -2,15 +2,21 @@ import at.petrak.hexcasting.common.lib.HexConfiguredFeatures; import com.google.common.collect.Lists; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.tags.BlockTags; import net.minecraft.util.RandomSource; -import net.minecraft.world.level.block.grower.AbstractTreeGrower; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.ChunkGenerator; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import java.util.List; -// TODO they fucking changed the trees AGAIN -public class AkashicTreeGrower extends AbstractTreeGrower { +public class AkashicTreeGrower { public static final AkashicTreeGrower INSTANCE = new AkashicTreeGrower(); public static final List>> GROWERS = Lists.newArrayList(); @@ -21,8 +27,49 @@ public static void init() { GROWERS.add(HexConfiguredFeatures.CITRINE_EDIFIED_TREE); } - @Override - protected ResourceKey> getConfiguredFeature(RandomSource pRandom, boolean pLargeHive) { + private ResourceKey> getConfiguredFeature(RandomSource pRandom, boolean pLargeHive) { return GROWERS.get(pRandom.nextInt(GROWERS.size())); } + + public boolean growTree(ServerLevel level, ChunkGenerator chunkGenerator, BlockPos pos, BlockState state, RandomSource random) { + ResourceKey> treeFeatureKey = getConfiguredFeature(random, hasFlowers(level, pos)); + if (treeFeatureKey == null) { + return false; + } else { + Holder> holder1 = level.registryAccess() + .registryOrThrow(Registries.CONFIGURED_FEATURE) + .getHolder(treeFeatureKey) + .orElse(null); + var event = net.neoforged.neoforge.event.EventHooks.fireBlockGrowFeature(level, random, pos, holder1); + holder1 = event.getFeature(); + if (event.isCanceled()) return false; + if (holder1 == null) { + return false; + } else { + ConfiguredFeature configuredfeature1 = holder1.value(); + BlockState blockstate1 = level.getFluidState(pos).createLegacyBlock(); + level.setBlock(pos, blockstate1, 4); + if (configuredfeature1.place(level, chunkGenerator, random, pos)) { + if (level.getBlockState(pos) == blockstate1) { + level.sendBlockUpdated(pos, state, blockstate1, 2); + } + + return true; + } else { + level.setBlock(pos, state, 4); + return false; + } + } + } + } + + private boolean hasFlowers(LevelAccessor level, BlockPos pos) { + for (BlockPos blockpos : BlockPos.MutableBlockPos.betweenClosed(pos.below().north(2).west(2), pos.above().south(2).east(2))) { + if (level.getBlockState(blockpos).is(BlockTags.FLOWERS)) { + return true; + } + } + + return false; + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java index 852fc675af..946d2c4aa2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java @@ -1,56 +1,45 @@ package at.petrak.hexcasting.common.msgs; -import io.netty.buffer.ByteBuf; +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.paucal.api.PaucalCodecs; import net.minecraft.client.Minecraft; import net.minecraft.core.particles.ParticleTypes; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.sounds.SoundSource; import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; import net.minecraft.world.phys.Vec3; -import static at.petrak.hexcasting.api.HexAPI.modLoc; +public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("beep")); -public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements IMessage { - public static final ResourceLocation ID = modLoc("beep"); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + PaucalCodecs.VEC3, MsgBeepS2C::target, + ByteBufCodecs.VAR_INT, MsgBeepS2C::note, + ByteBufCodecs.idMapper( + (num) -> NoteBlockInstrument.values()[num], + NoteBlockInstrument::ordinal + ), MsgBeepS2C::instrument, + MsgBeepS2C::new + ); @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgBeepS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var x = buf.readDouble(); - var y = buf.readDouble(); - var z = buf.readDouble(); - var note = buf.readInt(); - var instrument = buf.readEnum(NoteBlockInstrument.class); - return new MsgBeepS2C(new Vec3(x, y, z), note, instrument); - } - - @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.target.x); - buf.writeDouble(this.target.y); - buf.writeDouble(this.target.z); - buf.writeInt(this.note); - buf.writeEnum(instrument); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgBeepS2C msg) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var minecraft = Minecraft.getInstance(); - var world = minecraft.level; - if (world != null) { - float pitch = (float) Math.pow(2, (msg.note() - 12) / 12.0); - world.playLocalSound(msg.target().x, msg.target().y, msg.target().z, - msg.instrument().getSoundEvent().value(), SoundSource.PLAYERS, 3, pitch, false); - world.addParticle(ParticleTypes.NOTE, msg.target().x, msg.target().y + 0.2, msg.target().z, - msg.note() / 24.0, 0, 0); - } + Minecraft.getInstance().execute(() -> { + var minecraft = Minecraft.getInstance(); + var world = minecraft.level; + if (world != null) { + float pitch = (float) Math.pow(2, (msg.note() - 12) / 12.0); + world.playLocalSound(msg.target().x, msg.target().y, msg.target().z, + msg.instrument().getSoundEvent().value(), SoundSource.PLAYERS, 3, pitch, false); + world.addParticle(ParticleTypes.NOTE, msg.target().x, msg.target().y + 0.2, msg.target().z, + msg.note() / 24.0, 0, 0); } }); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java index ab75bc20ed..df770313ee 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java @@ -1,8 +1,15 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.casting.eval.ExecutionClientView; +import at.petrak.paucal.api.PaucalCodecs; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.phys.Vec3; @@ -11,27 +18,17 @@ /** * Sent server->client to synchronize OpBlink when the target is a player. */ -public record MsgBlinkS2C(Vec3 addedPosition) implements IMessage { - public static final ResourceLocation ID = modLoc("blink"); +public record MsgBlinkS2C(Vec3 addedPosition) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("blink")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgBlinkS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var x = buf.readDouble(); - var y = buf.readDouble(); - var z = buf.readDouble(); - return new MsgBlinkS2C(new Vec3(x, y, z)); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + PaucalCodecs.VEC3, MsgBlinkS2C::addedPosition, + MsgBlinkS2C::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.addedPosition.x); - buf.writeDouble(this.addedPosition.y); - buf.writeDouble(this.addedPosition.z); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgBlinkS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java index 9ec659b8b6..1b64420ffe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.ParticleSpray; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.client.ClientTickCounter; @@ -7,6 +8,9 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.phys.Vec3; @@ -18,47 +22,20 @@ /** * Sent server->client to spray particles everywhere. */ -public record MsgCastParticleS2C(ParticleSpray spray, FrozenPigment colorizer) implements IMessage { - public static final ResourceLocation ID = modLoc("cprtcl"); +public record MsgCastParticleS2C(ParticleSpray spray, FrozenPigment colorizer) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("cprtcl")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgCastParticleS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var posX = buf.readDouble(); - var posY = buf.readDouble(); - var posZ = buf.readDouble(); - var velX = buf.readDouble(); - var velY = buf.readDouble(); - var velZ = buf.readDouble(); - var fuzziness = buf.readDouble(); - var spread = buf.readDouble(); - var count = buf.readInt(); - var tag = buf.readAnySizeNbt(); - var colorizer = FrozenPigment.fromNBT(tag); - return new MsgCastParticleS2C( - new ParticleSpray(new Vec3(posX, posY, posZ), new Vec3(velX, velY, velZ), fuzziness, spread, count), - colorizer); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ParticleSpray.getSTREAM_CODEC(), MsgCastParticleS2C::spray, + FrozenPigment.STREAM_CODEC, MsgCastParticleS2C::colorizer, + MsgCastParticleS2C::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.spray.getPos().x); - buf.writeDouble(this.spray.getPos().y); - buf.writeDouble(this.spray.getPos().z); - buf.writeDouble(this.spray.getVel().x); - buf.writeDouble(this.spray.getVel().y); - buf.writeDouble(this.spray.getVel().z); - buf.writeDouble(this.spray.getFuzziness()); - buf.writeDouble(this.spray.getSpread()); - buf.writeInt(this.spray.getCount()); - buf.writeNbt(this.colorizer.serializeToNBT()); + public Type type() { + return TYPE; } - private static final Random RANDOM = new Random(); // https://math.stackexchange.com/questions/44689/how-to-find-a-random-axis-or-unit-vector-in-3d @@ -69,41 +46,38 @@ private static Vec3 randomInCircle(double maxTh) { } public static void handle(MsgCastParticleS2C msg) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var colProvider = msg.colorizer().getColorProvider(); - for (int i = 0; i < msg.spray().getCount(); i++) { - // For the colors, pick any random time to get a mix of colors + Minecraft.getInstance().execute(() -> { + var colProvider = msg.colorizer().getColorProvider(); + for (int i = 0; i < msg.spray().getCount(); i++) { + // For the colors, pick any random time to get a mix of colors - var offset = randomInCircle(Mth.TWO_PI).normalize() - .scale(RANDOM.nextFloat() * msg.spray().getFuzziness() / 2); - var pos = msg.spray().getPos().add(offset); + var offset = randomInCircle(Mth.TWO_PI).normalize() + .scale(RANDOM.nextFloat() * msg.spray().getFuzziness() / 2); + var pos = msg.spray().getPos().add(offset); - var phi = Math.acos(1.0 - RANDOM.nextDouble() * (1.0 - Math.cos(msg.spray().getSpread()))); - var theta = Math.PI * 2.0 * RANDOM.nextDouble(); - var v = msg.spray().getVel().normalize(); - // pick any old vector to get a vector normal to v with - Vec3 k; - if (v.x == 0.0 && v.y == 0.0) { - // oops, pick a *different* normal - k = new Vec3(1.0, 0.0, 0.0); - } else { - k = v.cross(new Vec3(0.0, 0.0, 1.0)); - } - var velUnlen = v.scale(Math.cos(phi)) - .add(k.scale(Math.sin(phi) * Math.cos(theta))) - .add(v.cross(k).scale(Math.sin(phi) * Math.sin(theta))); - var vel = velUnlen.scale(msg.spray().getVel().length() / 20); + var phi = Math.acos(1.0 - RANDOM.nextDouble() * (1.0 - Math.cos(msg.spray().getSpread()))); + var theta = Math.PI * 2.0 * RANDOM.nextDouble(); + var v = msg.spray().getVel().normalize(); + // pick any old vector to get a vector normal to v with + Vec3 k; + if (v.x == 0.0 && v.y == 0.0) { + // oops, pick a *different* normal + k = new Vec3(1.0, 0.0, 0.0); + } else { + k = v.cross(new Vec3(0.0, 0.0, 1.0)); + } + var velUnlen = v.scale(Math.cos(phi)) + .add(k.scale(Math.sin(phi) * Math.cos(theta))) + .add(v.cross(k).scale(Math.sin(phi) * Math.sin(theta))); + var vel = velUnlen.scale(msg.spray().getVel().length() / 20); - var color = colProvider.getColor(ClientTickCounter.getTotal(), velUnlen); + var color = colProvider.getColor(ClientTickCounter.getTotal(), velUnlen); - Minecraft.getInstance().level.addParticle( - new ConjureParticleOptions(color), - pos.x, pos.y, pos.z, - vel.x, vel.y, vel.z - ); - } + Minecraft.getInstance().level.addParticle( + new ConjureParticleOptions(color), + pos.x, pos.y, pos.z, + vel.x, vel.y, vel.z + ); } }); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java index 1f454ba700..ef4d539a6e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java @@ -1,46 +1,42 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; +import net.minecraft.core.UUIDUtil; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import java.util.UUID; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements IMessage { - public static final ResourceLocation ID = modLoc("clr_spi_pats_sc"); +public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("clr_spi_pats_sc")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgClearSpiralPatternsS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var player = buf.readUUID(); - - return new MsgClearSpiralPatternsS2C(player); - } + public static final StreamCodec STREAM_CODEC = UUIDUtil.STREAM_CODEC.map( + MsgClearSpiralPatternsS2C::new, + MsgClearSpiralPatternsS2C::playerUUID + ).mapStream(b -> b); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeUUID(playerUUID); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgClearSpiralPatternsS2C self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var mc = Minecraft.getInstance(); - assert mc.level != null; - var player = mc.level.getPlayerByUUID(self.playerUUID); - var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); - stack.slowClear(); - } + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + assert mc.level != null; + var player = mc.level.getPlayerByUUID(self.playerUUID); + var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); + stack.slowClear(); }); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java index ce19d966b3..06440b01b6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java @@ -1,11 +1,16 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import at.petrak.hexcasting.api.casting.eval.env.StaffCastEnv; import at.petrak.hexcasting.api.casting.math.HexPattern; +import at.petrak.hexcasting.api.pigment.FrozenPigment; import io.netty.buffer.ByteBuf; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; @@ -13,43 +18,27 @@ import java.util.ArrayList; import java.util.List; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - /** * Sent client->server when the player finishes drawing a pattern. * Server will send back a {@link MsgNewSpellPatternS2C} packet */ public record MsgNewSpellPatternC2S(InteractionHand handUsed, HexPattern pattern, - List resolvedPatterns) - implements IMessage { - public static final ResourceLocation ID = modLoc("pat_cs"); - - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgNewSpellPatternC2S deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var hand = buf.readEnum(InteractionHand.class); - var pattern = HexPattern.fromNBT(buf.readNbt()); - - var resolvedPatternsLen = buf.readInt(); - var resolvedPatterns = new ArrayList(resolvedPatternsLen); - for (int i = 0; i < resolvedPatternsLen; i++) { - resolvedPatterns.add(ResolvedPattern.fromNBT(buf.readNbt())); - } - return new MsgNewSpellPatternC2S(hand, pattern, resolvedPatterns); - } + List resolvedPatterns) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("pat_cs")); + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.BOOL.map( + isMain -> isMain ? InteractionHand.MAIN_HAND : InteractionHand.OFF_HAND, + hand -> hand == InteractionHand.MAIN_HAND + ), MsgNewSpellPatternC2S::handUsed, + HexPattern.STREAM_CODEC, MsgNewSpellPatternC2S::pattern, + ResolvedPattern.STREAM_CODEC.apply(ByteBufCodecs.list()), MsgNewSpellPatternC2S::resolvedPatterns, + MsgNewSpellPatternC2S::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeEnum(handUsed); - buf.writeNbt(this.pattern.serializeToNBT()); - buf.writeInt(this.resolvedPatterns.size()); - for (var pat : this.resolvedPatterns) { - buf.writeNbt(pat.serializeToNBT()); - } + public Type type() { + return TYPE; } public void handle(MinecraftServer server, ServerPlayer sender) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java index cadf3dd100..bb0af803ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java @@ -1,13 +1,21 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.eval.ExecutionClientView; +import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.client.gui.GuiSpellcasting; import at.petrak.hexcasting.common.lib.HexSounds; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.InteractionHand; import java.util.Optional; @@ -16,52 +24,30 @@ /** * Sent server->client when the player finishes casting a spell. */ -public record MsgNewSpellPatternS2C(ExecutionClientView info, int index) implements IMessage { - public static final ResourceLocation ID = modLoc("pat_sc"); +public record MsgNewSpellPatternS2C(ExecutionClientView info, int index) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("pat_sc")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgNewSpellPatternS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var isStackEmpty = buf.readBoolean(); - var resolutionType = buf.readEnum(ResolvedPatternType.class); - var index = buf.readInt(); - - var stack = buf.readList(FriendlyByteBuf::readNbt); - var raven = buf.readOptional(FriendlyByteBuf::readNbt).orElse(null); - - return new MsgNewSpellPatternS2C( - new ExecutionClientView(isStackEmpty, resolutionType, stack, raven), index - ); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ExecutionClientView.getSTREAM_CODEC(), MsgNewSpellPatternS2C::info, + ByteBufCodecs.VAR_INT, MsgNewSpellPatternS2C::index, + MsgNewSpellPatternS2C::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeBoolean(this.info.isStackClear()); - buf.writeEnum(this.info.getResolutionType()); - buf.writeInt(this.index); - - buf.writeCollection(this.info.getStackDescs(), FriendlyByteBuf::writeNbt); - buf.writeOptional(Optional.ofNullable(this.info.getRavenmind()), FriendlyByteBuf::writeNbt); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgNewSpellPatternS2C self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var mc = Minecraft.getInstance(); - if (self.info().isStackClear()) { - // don't pay attention to the screen, so it also stops when we die - mc.getSoundManager().stop(HexSounds.CASTING_AMBIANCE.getLocation(), null); - } - var screen = Minecraft.getInstance().screen; - if (screen instanceof GuiSpellcasting spellGui) { - spellGui.recvServerUpdate(self.info(), self.index()); - } + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + if (self.info().isStackClear()) { + // don't pay attention to the screen, so it also stops when we die + mc.getSoundManager().stop(HexSounds.CASTING_AMBIANCE.getLocation(), null); + } + var screen = Minecraft.getInstance().screen; + if (screen instanceof GuiSpellcasting spellGui) { + spellGui.recvServerUpdate(self.info(), self.index()); } }); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java index 9c5a02180c..9b1a844353 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java @@ -1,10 +1,16 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; +import net.minecraft.core.UUIDUtil; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import java.util.ArrayList; @@ -13,44 +19,30 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements IMessage { - public static final ResourceLocation ID = modLoc("spi_pats_sc"); +public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("spi_pats_sc")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgNewSpiralPatternsS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var player = buf.readUUID(); - var patterns = buf.readCollection(ArrayList::new, buff -> HexPattern.fromNBT(buf.readNbt())); - var lifetime = buf.readInt(); - - - return new MsgNewSpiralPatternsS2C(player, patterns, lifetime); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + UUIDUtil.STREAM_CODEC, MsgNewSpiralPatternsS2C::playerUUID, + HexPattern.STREAM_CODEC.apply(ByteBufCodecs.list()), MsgNewSpiralPatternsS2C::patterns, + ByteBufCodecs.VAR_INT, MsgNewSpiralPatternsS2C::lifetime, + MsgNewSpiralPatternsS2C::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeUUID(playerUUID); - buf.writeCollection(patterns, (buff, pattern) -> buff.writeNbt(pattern.serializeToNBT())); - buf.writeInt(lifetime); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgNewSpiralPatternsS2C self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var mc = Minecraft.getInstance(); - assert mc.level != null; - var player = mc.level.getPlayerByUUID(self.playerUUID); - var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); - - for (var pattern : self.patterns) - stack.addPattern(pattern, self.lifetime); - } + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + assert mc.level != null; + var player = mc.level.getPlayerByUUID(self.playerUUID); + var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); + + for (var pattern : self.patterns) + stack.addPattern(pattern, self.lifetime); }); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java index 67e77248cc..6cdd30003c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java @@ -1,59 +1,53 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.entities.EntityWallScroll; +import at.petrak.paucal.api.PaucalCodecs; import net.minecraft.client.Minecraft; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; import static at.petrak.hexcasting.api.HexAPI.modLoc; // https://github.com/VazkiiMods/Botania/blob/1.18.x/Xplat/src/main/java/vazkii/botania/network/clientbound/PacketSpawnDoppleganger.java public record MsgNewWallScrollS2C(ClientboundAddEntityPacket inner, BlockPos pos, Direction dir, ItemStack scrollItem, - boolean showsStrokeOrder, int blockSize) implements IMessage { - public static final ResourceLocation ID = modLoc("wallscr"); + boolean showsStrokeOrder, int blockSize) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("wallscr")); - @Override - public ResourceLocation getFabricId() { - return ID; - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ClientboundAddEntityPacket.STREAM_CODEC, MsgNewWallScrollS2C::inner, + BlockPos.STREAM_CODEC, MsgNewWallScrollS2C::pos, + Direction.STREAM_CODEC, MsgNewWallScrollS2C::dir, + ItemStack.STREAM_CODEC, MsgNewWallScrollS2C::scrollItem, + ByteBufCodecs.BOOL, MsgNewWallScrollS2C::showsStrokeOrder, + ByteBufCodecs.VAR_INT, MsgNewWallScrollS2C::blockSize, + MsgNewWallScrollS2C::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - inner.write(buf); - buf.writeBlockPos(pos); - buf.writeByte(dir.ordinal()); - buf.writeItem(scrollItem); - buf.writeBoolean(showsStrokeOrder); - buf.writeVarInt(blockSize); - } - - public static MsgNewWallScrollS2C deserialize(FriendlyByteBuf buf) { - var inner = new ClientboundAddEntityPacket(buf); - var pos = buf.readBlockPos(); - var dir = HexUtils.getSafe(Direction.values(), buf.readByte()); - var scroll = buf.readItem(); - var strokeOrder = buf.readBoolean(); - var blockSize = buf.readVarInt(); - return new MsgNewWallScrollS2C(inner, pos, dir, scroll, strokeOrder, blockSize); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgNewWallScrollS2C self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var player = Minecraft.getInstance().player; - if (player != null) { - player.connection.handleAddEntity(self.inner); - var e = player.level().getEntity(self.inner.getId()); - if (e instanceof EntityWallScroll scroll) { - scroll.readSpawnData(self.pos, self.dir, self.scrollItem, self.showsStrokeOrder, - self.blockSize); - } + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + player.connection.handleAddEntity(self.inner); + var e = player.level().getEntity(self.inner.getId()); + if (e instanceof EntityWallScroll scroll) { + scroll.readSpawnData(self.pos, self.dir, self.scrollItem, self.showsStrokeOrder, + self.blockSize); } } }); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index a06e608bdb..5b5d77fdcb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -1,12 +1,21 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; +import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.casting.iota.IotaType; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.client.gui.GuiSpellcasting; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.ExtraCodecs; import net.minecraft.world.InteractionHand; import java.util.List; @@ -17,53 +26,36 @@ * Sent server->client when the player opens the spell gui to request the server provide the current stack. */ public record MsgOpenSpellGuiS2C(InteractionHand hand, List patterns, - List stack, + List stack, CompoundTag ravenmind, int parenCount ) - implements IMessage { - public static final ResourceLocation ID = modLoc("cgui"); + implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("cgui")); + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.BOOL.map( + isMain -> isMain ? InteractionHand.MAIN_HAND : InteractionHand.OFF_HAND, + hand -> hand == InteractionHand.MAIN_HAND + ), MsgOpenSpellGuiS2C::hand, + ResolvedPattern.STREAM_CODEC.apply(ByteBufCodecs.list()), MsgOpenSpellGuiS2C::patterns, + IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), MsgOpenSpellGuiS2C::stack, + ByteBufCodecs.COMPOUND_TAG, MsgOpenSpellGuiS2C::ravenmind, + ByteBufCodecs.VAR_INT, MsgOpenSpellGuiS2C::parenCount, + MsgOpenSpellGuiS2C::new + ); @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgOpenSpellGuiS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var hand = buf.readEnum(InteractionHand.class); - - var patterns = buf.readList(fbb -> ResolvedPattern.fromNBT(fbb.readAnySizeNbt())); - - var stack = buf.readList(FriendlyByteBuf::readNbt); - var raven = buf.readAnySizeNbt(); - - var parenCount = buf.readVarInt(); - - return new MsgOpenSpellGuiS2C(hand, patterns, stack, raven, parenCount); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeEnum(this.hand); - - buf.writeCollection(this.patterns, (fbb, pat) -> fbb.writeNbt(pat.serializeToNBT())); - - buf.writeCollection(this.stack, FriendlyByteBuf::writeNbt); - buf.writeNbt(this.ravenmind); - - buf.writeVarInt(this.parenCount); + public Type type() { + return TYPE; } public static void handle(MsgOpenSpellGuiS2C msg) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var mc = Minecraft.getInstance(); - mc.setScreen( - new GuiSpellcasting(msg.hand(), msg.patterns(), msg.stack, msg.ravenmind, - msg.parenCount)); - } + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + mc.setScreen( + new GuiSpellcasting(msg.hand(), msg.patterns(), msg.stack, msg.ravenmind, + msg.parenCount)); }); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java index 137c97f534..44ee8f9b21 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java @@ -1,47 +1,46 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.entities.EntityWallScroll; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.ItemStack; import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent S->C to have a wall scroll recalculate its pattern, to get readability offset. */ -public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrder) implements IMessage { - public static final ResourceLocation ID = modLoc("redoscroll"); +public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrder) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("redoscroll")); - public static MsgRecalcWallScrollDisplayS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var id = buf.readVarInt(); - var showStrokeOrder = buf.readBoolean(); - return new MsgRecalcWallScrollDisplayS2C(id, showStrokeOrder); - } - - @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeVarInt(entityId); - buf.writeBoolean(showStrokeOrder); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.VAR_INT, MsgRecalcWallScrollDisplayS2C::entityId, + ByteBufCodecs.BOOL, MsgRecalcWallScrollDisplayS2C::showStrokeOrder, + MsgRecalcWallScrollDisplayS2C::new + ); @Override - public ResourceLocation getFabricId() { - return ID; + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgRecalcWallScrollDisplayS2C msg) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var mc = Minecraft.getInstance(); - var entity = mc.level.getEntity(msg.entityId); - if (entity instanceof EntityWallScroll scroll - && scroll.getShowsStrokeOrder() != msg.showStrokeOrder) { - scroll.recalculateDisplay(); - } + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + var entity = mc.level.getEntity(msg.entityId); + if (entity instanceof EntityWallScroll scroll + && scroll.getShowsStrokeOrder() != msg.showStrokeOrder) { + scroll.recalculateDisplay(); } }); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java index e1f4d354a6..fb487a0c96 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java @@ -1,16 +1,25 @@ package at.petrak.hexcasting.common.msgs; +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import at.petrak.hexcasting.api.casting.iota.IotaType; +import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.items.storage.ItemAbacus; import at.petrak.hexcasting.common.items.storage.ItemSpellbook; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; +import net.minecraft.core.component.DataComponents; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; @@ -25,30 +34,21 @@ * or scrolls in the spellcasting UI. */ public record MsgShiftScrollC2S(double mainHandDelta, double offHandDelta, boolean isCtrl, boolean invertSpellbook, - boolean invertAbacus) implements IMessage { - public static final ResourceLocation ID = modLoc("scroll"); + boolean invertAbacus) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("scroll")); + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.DOUBLE, MsgShiftScrollC2S::mainHandDelta, + ByteBufCodecs.DOUBLE, MsgShiftScrollC2S::offHandDelta, + ByteBufCodecs.BOOL, MsgShiftScrollC2S::isCtrl, + ByteBufCodecs.BOOL, MsgShiftScrollC2S::invertSpellbook, + ByteBufCodecs.BOOL, MsgShiftScrollC2S::invertAbacus, + MsgShiftScrollC2S::new + ); @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgShiftScrollC2S deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var mainHandDelta = buf.readDouble(); - var offHandDelta = buf.readDouble(); - var isCtrl = buf.readBoolean(); - var invertSpellbook = buf.readBoolean(); - var invertAbacus = buf.readBoolean(); - return new MsgShiftScrollC2S(mainHandDelta, offHandDelta, isCtrl, invertSpellbook, invertAbacus); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.mainHandDelta); - buf.writeDouble(this.offHandDelta); - buf.writeBoolean(this.isCtrl); - buf.writeBoolean(this.invertSpellbook); - buf.writeBoolean(this.invertAbacus); + public Type type() { + return TYPE; } public void handle(MinecraftServer server, ServerPlayer sender) { @@ -82,19 +82,19 @@ private void spellbook(ServerPlayer sender, InteractionHand hand, ItemStack stac var sealed = ItemSpellbook.isSealed(stack); MutableComponent component; - if (hand == InteractionHand.OFF_HAND && stack.hasCustomHoverName()) { + if (hand == InteractionHand.OFF_HAND && stack.has(DataComponents.CUSTOM_NAME)) { if (sealed) { component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name.sealed", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), - Component.literal("").withStyle(stack.getRarity().color, ChatFormatting.ITALIC) + Component.literal("").withStyle(stack.getRarity().getStyleModifier()).withStyle(ChatFormatting.ITALIC) .append(stack.getHoverName()), Component.translatable("hexcasting.tooltip.spellbook.sealed").withStyle(ChatFormatting.GOLD)); } else { component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), - Component.literal("").withStyle(stack.getRarity().color, ChatFormatting.ITALIC) + Component.literal("").withStyle(stack.getRarity().getStyleModifier()).withStyle(ChatFormatting.ITALIC) .append(stack.getHoverName())); } @@ -120,7 +120,9 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, } var increase = delta < 0; - double num = NBTHelper.getDouble(stack, ItemAbacus.TAG_VALUE); + Double num = stack.get(HexDataComponents.ABACUS_VALUE); + if(num == null) + num = 0.0; double shiftDelta; float pitch; @@ -135,16 +137,16 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, int scale = Math.max((int) Math.floor(Math.abs(delta)), 1); num += scale * shiftDelta * (increase ? 1 : -1); - NBTHelper.putDouble(stack, ItemAbacus.TAG_VALUE, num); + stack.set(HexDataComponents.ABACUS_VALUE, num); pitch *= (increase ? 1.05f : 0.95f); pitch += (Math.random() - 0.5) * 0.1; sender.level().playSound(null, sender.getX(), sender.getY(), sender.getZ(), HexSounds.ABACUS, SoundSource.PLAYERS, 0.5f, pitch); - var datumTag = HexItems.ABACUS.readIotaTag(stack); - if (datumTag != null) { - var popup = IotaType.getDisplay(datumTag); + var datum = HexItems.ABACUS.readIota(stack); + if (datum != null) { + var popup = datum.display(); sender.displayClientMessage( Component.translatable("hexcasting.tooltip.abacus", popup).withStyle(ChatFormatting.GREEN), true); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java b/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java index 79df382994..f5696edbe4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java @@ -4,10 +4,14 @@ import com.mojang.brigadier.StringReader; import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import java.util.Locale; @@ -17,50 +21,32 @@ public ParticleType getType() { return HexParticles.CONJURE_PARTICLE; } - @Override - public void writeToNetwork(FriendlyByteBuf buf) { - buf.writeInt(this.color); - } - - @Override - public String writeToString() { - return String.format(Locale.ROOT, "%s %s", this.color); - } - - public static final Deserializer DESERIALIZER = new Deserializer<>() { - @Override - public ConjureParticleOptions fromCommand(ParticleType type, - StringReader reader) throws CommandSyntaxException { - - reader.expect(' '); - var color = reader.readInt(); - return new ConjureParticleOptions(color); - } - - @Override - public ConjureParticleOptions fromNetwork(ParticleType type, - FriendlyByteBuf buf) { - var col = buf.readInt(); - return new ConjureParticleOptions(col); - } - }; - public static class Type extends ParticleType { public Type(boolean pOverrideLimiter) { - super(pOverrideLimiter, DESERIALIZER); + super(pOverrideLimiter); } - public static final Codec CODEC = RecordCodecBuilder.create( + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( instance -> instance.group( Codec.INT.fieldOf("color") .forGetter((ConjureParticleOptions o) -> o.color) ) .apply(instance, ConjureParticleOptions::new) ); + public static final StreamCodec STREAM_CODEC = + StreamCodec.composite( + ByteBufCodecs.VAR_INT, ConjureParticleOptions::color, + ConjureParticleOptions::new + ); @Override - public Codec codec() { + public MapCodec codec() { return CODEC; } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index 8f6db1efb0..e989dcbe6e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,18 +1,26 @@ package at.petrak.hexcasting.common.recipe; import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; import com.google.gson.JsonObject; -import net.minecraft.core.RegistryAccess; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.HolderLookup; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.GsonHelper; -import net.minecraft.world.Container; import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.ai.Brain; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.Level; @@ -23,21 +31,15 @@ // God I am a horrible person public record BrainsweepRecipe( - ResourceLocation id, StateIngredient blockIn, BrainsweepeeIngredient entityIn, long mediaCost, BlockState result -) implements Recipe { +) implements Recipe { public boolean matches(BlockState blockIn, Entity victim, ServerLevel level) { return this.blockIn.test(blockIn) && this.entityIn.test(victim, level); } - @Override - public ResourceLocation getId() { - return id; - } - @Override public RecipeType getType() { return HexRecipeStuffRegistry.BRAINSWEEP_TYPE; @@ -51,12 +53,12 @@ public RecipeSerializer getSerializer() { // in order to get this to be a "Recipe" we need to do a lot of bending-over-backwards // to get the implementation to be satisfied even though we never use it @Override - public boolean matches(Container pContainer, Level pLevel) { + public boolean matches(RecipeInput input, Level level) { return false; } @Override - public ItemStack assemble(Container pContainer, RegistryAccess access) { + public ItemStack assemble(RecipeInput input, HolderLookup.Provider registries) { return ItemStack.EMPTY; } @@ -66,7 +68,7 @@ public boolean canCraftInDimensions(int pWidth, int pHeight) { } @Override - public ItemStack getResultItem(RegistryAccess registryAccess) { + public ItemStack getResultItem(HolderLookup.Provider registries) { return ItemStack.EMPTY.copy(); } @@ -84,30 +86,31 @@ public static BlockState copyProperties(BlockState original, BlockState copyTo) } public static class Serializer extends RecipeSerializerBase { - @Override - public @NotNull BrainsweepRecipe fromJson(ResourceLocation recipeID, JsonObject json) { - var blockIn = StateIngredientHelper.deserialize(GsonHelper.getAsJsonObject(json, "blockIn")); - var villagerIn = BrainsweepeeIngredient.deserialize(GsonHelper.getAsJsonObject(json, "entityIn")); - var cost = GsonHelper.getAsInt(json, "cost"); - var result = StateIngredientHelper.readBlockState(GsonHelper.getAsJsonObject(json, "result")); - return new BrainsweepRecipe(recipeID, blockIn, villagerIn, cost, result); - } + public static MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> + inst.group( + StateIngredients.TYPED_CODEC.fieldOf("blockIn").forGetter(BrainsweepRecipe::blockIn), + BrainsweepeeIngredients.TYPED_CODEC.fieldOf("entityIn").forGetter(BrainsweepRecipe::entityIn), + Codec.LONG.fieldOf("cost").forGetter(BrainsweepRecipe::mediaCost), + BlockState.CODEC.fieldOf("result").forGetter(BrainsweepRecipe::result) + ).apply(inst, BrainsweepRecipe::new) + ); + public static StreamCodec STREAM_CODEC = StreamCodec.composite( + StateIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::blockIn, + BrainsweepeeIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::entityIn, + ByteBufCodecs.VAR_LONG, BrainsweepRecipe::mediaCost, + ByteBufCodecs.VAR_INT, (recipe) -> Block.getId(recipe.result), + (state, ent, cost, stateId) -> + new BrainsweepRecipe(state, ent, cost, Block.stateById(stateId)) + ); @Override - public void toNetwork(FriendlyByteBuf buf, BrainsweepRecipe recipe) { - recipe.blockIn.write(buf); - recipe.entityIn.wrapWrite(buf); - buf.writeVarLong(recipe.mediaCost); - buf.writeVarInt(Block.getId(recipe.result)); + public @NotNull MapCodec codec() { + return CODEC; } @Override - public @NotNull BrainsweepRecipe fromNetwork(ResourceLocation recipeID, FriendlyByteBuf buf) { - var blockIn = StateIngredientHelper.read(buf); - var brainsweepeeIn = BrainsweepeeIngredient.read(buf); - var cost = buf.readVarLong(); - var result = Block.stateById(buf.readVarInt()); - return new BrainsweepRecipe(recipeID, blockIn, brainsweepeeIn, cost, result); + public @NotNull StreamCodec streamCodec() { + return STREAM_CODEC; } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java index 570d6631be..52797baf6c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java @@ -1,19 +1,18 @@ package at.petrak.hexcasting.common.recipe; -import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.items.storage.ItemSpellbook; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import net.minecraft.core.HolderLookup; import net.minecraft.core.NonNullList; -import net.minecraft.core.RegistryAccess; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.*; import org.jetbrains.annotations.NotNull; +import java.util.Optional; + public class SealSpellbookRecipe extends ShapelessRecipe { public static final SimpleCraftingRecipeSerializer SERIALIZER = new SimpleCraftingRecipeSerializer<>(SealSpellbookRecipe::new); @@ -21,7 +20,7 @@ public class SealSpellbookRecipe extends ShapelessRecipe { private static ItemStack getSealedStack() { ItemStack output = new ItemStack(HexItems.SPELLBOOK); ItemSpellbook.setSealed(output, true); - NBTHelper.putString(output, IotaHolderItem.TAG_OVERRIDE_VISUALLY, "any"); + output.set(HexDataComponents.VISUAL_OVERRIDE, Optional.empty()); return output; } @@ -32,15 +31,15 @@ private static NonNullList createIngredients() { return ingredients; } - public SealSpellbookRecipe(ResourceLocation id, CraftingBookCategory category) { - super(id, "", category, getSealedStack(), createIngredients()); + public SealSpellbookRecipe(CraftingBookCategory category) { + super("", category, getSealedStack(), createIngredients()); } @Override - public @NotNull ItemStack assemble(CraftingContainer inv, RegistryAccess access) { + public @NotNull ItemStack assemble(CraftingInput inv, HolderLookup.RegistryLookup.@NotNull Provider registryProvider) { ItemStack out = ItemStack.EMPTY; - for (int i = 0; i < inv.getContainerSize(); i++) { + for (int i = 0; i < inv.size(); i++) { var stack = inv.getItem(i); if (stack.is(HexItems.SPELLBOOK)) { out = stack.copy(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java index 365d68fe59..0da1e86001 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java @@ -3,16 +3,15 @@ import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.items.storage.ItemFocus; import at.petrak.hexcasting.common.items.storage.ItemSpellbook; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; +import net.minecraft.core.HolderLookup; import net.minecraft.core.RegistryAccess; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.StringRepresentable; import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.CraftingBookCategory; -import net.minecraft.world.item.crafting.CustomRecipe; -import net.minecraft.world.item.crafting.RecipeSerializer; -import net.minecraft.world.item.crafting.SimpleCraftingRecipeSerializer; +import net.minecraft.world.item.crafting.*; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; @@ -26,8 +25,8 @@ public class SealThingsRecipe extends CustomRecipe { public static final SimpleCraftingRecipeSerializer SPELLBOOK_SERIALIZER = new SimpleCraftingRecipeSerializer<>(SealThingsRecipe::spellbook); - public SealThingsRecipe(ResourceLocation id, CraftingBookCategory category, Sealee sealee) { - super(id, category); + public SealThingsRecipe(CraftingBookCategory category, Sealee sealee) { + super(category); this.sealee = sealee; } @@ -38,11 +37,11 @@ public boolean canCraftInDimensions(int width, int height) { } @Override - public boolean matches(CraftingContainer container, Level level) { + public boolean matches(CraftingInput container, Level level) { boolean foundComb = false; boolean foundSealee = false; - for (int i = 0; i < container.getContainerSize(); i++) { + for (int i = 0; i < container.size(); i++) { var stack = container.getItem(i); if (this.sealee.isCorrectSealee(stack)) { if (foundSealee) return false; @@ -57,10 +56,10 @@ public boolean matches(CraftingContainer container, Level level) { } @Override - public ItemStack assemble(CraftingContainer inv, RegistryAccess registryAccess) { + public @NotNull ItemStack assemble(CraftingInput inv, HolderLookup.RegistryLookup.@NotNull Provider registryProvider) { ItemStack sealee = ItemStack.EMPTY; - for (int i = 0; i < inv.getContainerSize(); i++) { + for (int i = 0; i < inv.size(); i++) { var stack = inv.getItem(i); if (this.sealee.isCorrectSealee(stack)) { sealee = stack.copy(); @@ -84,12 +83,12 @@ public ItemStack assemble(CraftingContainer inv, RegistryAccess registryAccess) }; } - public static SealThingsRecipe focus(ResourceLocation id, CraftingBookCategory category) { - return new SealThingsRecipe(id, category, Sealee.FOCUS); + public static SealThingsRecipe focus(CraftingBookCategory category) { + return new SealThingsRecipe(category, Sealee.FOCUS); } - public static SealThingsRecipe spellbook(ResourceLocation id, CraftingBookCategory category) { - return new SealThingsRecipe(id, category, Sealee.SPELLBOOK); + public static SealThingsRecipe spellbook(CraftingBookCategory category) { + return new SealThingsRecipe(category, Sealee.SPELLBOOK); } public enum Sealee implements StringRepresentable { @@ -104,10 +103,10 @@ public String getSerializedName() { public boolean isCorrectSealee(ItemStack stack) { return switch (this) { case FOCUS -> stack.is(HexItems.FOCUS) - && HexItems.FOCUS.readIotaTag(stack) != null + && stack.has(HexDataComponents.IOTA) && !ItemFocus.isSealed(stack); case SPELLBOOK -> stack.is(HexItems.SPELLBOOK) - && HexItems.SPELLBOOK.readIotaTag(stack) != null + && HexItems.SPELLBOOK.readIota(stack) != null && !ItemSpellbook.isSealed(stack); }; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java index cd2cca2268..ff86ad8923 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java @@ -15,15 +15,14 @@ // https://github.com/VazkiiMods/Botania/blob/1.18.x/Common/src/main/java/vazkii/botania/api/recipe/StateIngredient.java // good artists copy and all public interface StateIngredient extends Predicate { + + StateIngredientType getType(); + @Override boolean test(BlockState state); BlockState pick(Random random); - JsonObject serialize(); - - void write(FriendlyByteBuf buffer); - List getDisplayedStacks(); /** diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java index ac9febaf7f..c3b0f9aae1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java @@ -1,9 +1,12 @@ package at.petrak.hexcasting.common.recipe.ingredient; -import com.google.gson.JsonObject; -import net.minecraft.core.Registry; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; @@ -20,6 +23,11 @@ public StateIngredientBlock(Block block) { this.block = block; } + @Override + public StateIngredientType getType() { + return StateIngredients.BLOCK_TYPE; + } + @Override public boolean test(BlockState blockState) { return block == blockState.getBlock(); @@ -30,20 +38,6 @@ public BlockState pick(Random random) { return block.defaultBlockState(); } - @Override - public JsonObject serialize() { - JsonObject object = new JsonObject(); - object.addProperty("type", "block"); - object.addProperty("block", BuiltInRegistries.BLOCK.getKey(block).toString()); - return object; - } - - @Override - public void write(FriendlyByteBuf buffer) { - buffer.writeVarInt(1); - buffer.writeVarInt(BuiltInRegistries.BLOCK.getId(block)); - } - @Override public List getDisplayedStacks() { if (block.asItem() == Items.AIR) { @@ -81,4 +75,25 @@ public int hashCode() { public String toString() { return "StateIngredientBlock{" + block + "}"; } + + + public static class Type implements StateIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + BuiltInRegistries.BLOCK.byNameCodec().fieldOf("block").forGetter(StateIngredientBlock::getBlock) + ).apply(instance, StateIngredientBlock::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.registry(Registries.BLOCK), StateIngredientBlock::getBlock, + StateIngredientBlock::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java index c1018f47df..61066ff647 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java @@ -1,10 +1,12 @@ package at.petrak.hexcasting.common.recipe.ingredient; -import com.google.common.collect.ImmutableMap; -import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; -import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; @@ -21,6 +23,11 @@ public StateIngredientBlockState(BlockState state) { this.state = state; } + @Override + public StateIngredientType getType() { + return StateIngredients.BLOCK_STATE; + } + @Override public boolean test(BlockState blockState) { return this.state == blockState; @@ -31,19 +38,6 @@ public BlockState pick(Random random) { return state; } - @Override - public JsonObject serialize() { - JsonObject object = StateIngredientHelper.serializeBlockState(state); - object.addProperty("type", "state"); - return object; - } - - @Override - public void write(FriendlyByteBuf buffer) { - buffer.writeVarInt(2); - buffer.writeVarInt(Block.getId(state)); - } - @Override public List getDisplayedStacks() { Block block = state.getBlock(); @@ -56,7 +50,7 @@ public List getDisplayedStacks() { @Nullable @Override public List descriptionTooltip() { - ImmutableMap, Comparable> map = state.getValues(); + Map, Comparable> map = state.getValues(); if (map.isEmpty()) { return StateIngredient.super.descriptionTooltip(); } @@ -100,4 +94,25 @@ public int hashCode() { public String toString() { return "StateIngredientBlockState{" + state + "}"; } + + + public static class Type implements StateIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + BlockState.CODEC.fieldOf("state").forGetter(StateIngredientBlockState::getState) + ).apply(instance, StateIngredientBlockState::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.VAR_INT.map(Block::stateById, Block::getId), StateIngredientBlockState::getState, + StateIngredientBlockState::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java index eb0291709f..d203fd8fc9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java @@ -3,9 +3,15 @@ import com.google.common.collect.ImmutableSet; import com.google.gson.JsonArray; import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; @@ -25,6 +31,11 @@ public StateIngredientBlocks(Collection blocks) { this.blocks = ImmutableSet.copyOf(blocks); } + @Override + public StateIngredientType getType() { + return StateIngredients.BLOCKS; + } + @Override public boolean test(BlockState state) { return blocks.contains(state.getBlock()); @@ -35,28 +46,6 @@ public BlockState pick(Random random) { return blocks.asList().get(random.nextInt(blocks.size())).defaultBlockState(); } - @Override - public JsonObject serialize() { - JsonObject object = new JsonObject(); - object.addProperty("type", "blocks"); - JsonArray array = new JsonArray(); - for (Block block : blocks) { - array.add(BuiltInRegistries.BLOCK.getKey(block).toString()); - } - object.add("blocks", array); - return object; - } - - @Override - public void write(FriendlyByteBuf buffer) { - List blocks = getBlocks(); - buffer.writeVarInt(0); - buffer.writeVarInt(blocks.size()); - for (Block block : blocks) { - buffer.writeVarInt(BuiltInRegistries.BLOCK.getId(block)); - } - } - @Override public List getDisplayedStacks() { return blocks.stream() @@ -95,4 +84,25 @@ public boolean equals(Object o) { public int hashCode() { return Objects.hash(blocks); } + + + public static class Type implements StateIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + BuiltInRegistries.BLOCK.byNameCodec().listOf().fieldOf("block").forGetter(StateIngredientBlocks::getBlocks) + ).apply(instance, StateIngredientBlocks::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.registry(Registries.BLOCK).apply(ByteBufCodecs.list()), StateIngredientBlocks::getBlocks, + StateIngredientBlocks::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientHelper.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientHelper.java deleted file mode 100644 index 97e09d9d36..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientHelper.java +++ /dev/null @@ -1,167 +0,0 @@ -package at.petrak.hexcasting.common.recipe.ingredient; - -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParseException; -import com.mojang.serialization.Dynamic; -import com.mojang.serialization.JsonOps; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.NbtUtils; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.tags.TagKey; -import net.minecraft.util.GsonHelper; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.block.state.BlockState; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; -import java.util.*; - -public class StateIngredientHelper { - public static StateIngredient of(Block block) { - return new StateIngredientBlock(block); - } - - public static StateIngredient of(BlockState state) { - return new StateIngredientBlockState(state); - } - - public static StateIngredient of(TagKey tag) { - return of(tag.location()); - } - - public static StateIngredient of(ResourceLocation id) { - return new StateIngredientTag(id); - } - - public static StateIngredient of(Collection blocks) { - return new StateIngredientBlocks(blocks); - } - - public static StateIngredient tagExcluding(TagKey tag, StateIngredient... excluded) { - return new StateIngredientTagExcluding(tag.location(), List.of(excluded)); - } - - public static StateIngredient deserialize(JsonObject object) { - switch (GsonHelper.getAsString(object, "type")) { - case "tag": - return new StateIngredientTag(new ResourceLocation(GsonHelper.getAsString(object, "tag"))); - case "block": - return new StateIngredientBlock( - BuiltInRegistries.BLOCK.get(new ResourceLocation(GsonHelper.getAsString(object, "block")))); - case "state": - return new StateIngredientBlockState(readBlockState(object)); - case "blocks": - List blocks = new ArrayList<>(); - for (JsonElement element : GsonHelper.getAsJsonArray(object, "blocks")) { - blocks.add(BuiltInRegistries.BLOCK.get(new ResourceLocation(element.getAsString()))); - } - return new StateIngredientBlocks(blocks); - case "tag_excluding": - ResourceLocation tag = new ResourceLocation(GsonHelper.getAsString(object, "tag")); - List ingr = new ArrayList<>(); - for (JsonElement element : GsonHelper.getAsJsonArray(object, "exclude")) { - ingr.add(deserialize(GsonHelper.convertToJsonObject(element, "exclude entry"))); - } - return new StateIngredientTagExcluding(tag, ingr); - default: - throw new JsonParseException("Unknown type!"); - } - } - - /** - * Deserializes a state ingredient, but removes air from its data, - * and returns null if the ingredient only matched air. - */ - @Nullable - public static StateIngredient tryDeserialize(JsonObject object) { - StateIngredient ingr = deserialize(object); - if (ingr instanceof StateIngredientTag sit) { - if (sit.resolve().findAny().isEmpty()) { - return null; - } - return ingr; - } - if (ingr instanceof StateIngredientBlock || ingr instanceof StateIngredientBlockState) { - if (ingr.test(Blocks.AIR.defaultBlockState())) { - return null; - } - } else if (ingr instanceof StateIngredientBlocks sib) { - Collection blocks = sib.blocks; - List list = new ArrayList<>(blocks); - if (list.removeIf(b -> b == Blocks.AIR)) { - if (list.size() == 0) { - return null; - } - return of(list); - } - } - return ingr; - } - - public static StateIngredient read(FriendlyByteBuf buffer) { - switch (buffer.readVarInt()) { - case 0: - int count = buffer.readVarInt(); - Set set = new HashSet<>(); - for (int i = 0; i < count; i++) { - int id = buffer.readVarInt(); - Block block = BuiltInRegistries.BLOCK.byId(id); - set.add(block); - } - return new StateIngredientBlocks(set); - case 1: - return new StateIngredientBlock(BuiltInRegistries.BLOCK.byId(buffer.readVarInt())); - case 2: - return new StateIngredientBlockState(Block.stateById(buffer.readVarInt())); - default: - throw new IllegalArgumentException("Unknown input discriminator!"); - } - } - - /** - * Writes data about the block state to the provided json object. - */ - public static JsonObject serializeBlockState(BlockState state) { - CompoundTag nbt = NbtUtils.writeBlockState(state); - renameTag(nbt, "Name", "name"); - renameTag(nbt, "Properties", "properties"); - Dynamic dyn = new Dynamic<>(NbtOps.INSTANCE, nbt); - return dyn.convert(JsonOps.INSTANCE).getValue().getAsJsonObject(); - } - - /** - * Reads the block state from the provided json object. - */ - public static BlockState readBlockState(JsonObject object) { - CompoundTag nbt = (CompoundTag) new Dynamic<>(JsonOps.INSTANCE, object).convert(NbtOps.INSTANCE).getValue(); - renameTag(nbt, "name", "Name"); - renameTag(nbt, "properties", "Properties"); - String name = nbt.getString("Name"); - ResourceLocation id = ResourceLocation.tryParse(name); - if (id == null || !BuiltInRegistries.BLOCK.getOptional(id).isPresent()) { - throw new IllegalArgumentException("Invalid or unknown block ID: " + name); - } - return NbtUtils.readBlockState(BuiltInRegistries.BLOCK.asLookup(), nbt); - } - - @Deprecated - @Nonnull - public static List toStackList(StateIngredient input) { - return input.getDisplayedStacks(); - } - - private static void renameTag(CompoundTag tag, String from, String to) { - var t = tag.get(from); - if (t != null) { - tag.remove(from); - tag.put(to, t); - } - } -} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java index 5850bd1bf2..8e1d4f3c43 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java @@ -2,10 +2,15 @@ import com.google.common.collect.ImmutableSet; import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.Holder; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; import net.minecraft.world.item.ItemStack; @@ -23,9 +28,14 @@ public class StateIngredientTag extends StateIngredientBlocks { private final TagKey tag; - public StateIngredientTag(ResourceLocation tag) { + public StateIngredientTag(TagKey tag) { super(ImmutableSet.of()); - this.tag = TagKey.create(Registries.BLOCK, tag); + this.tag = tag; + } + + @Override + public StateIngredientType getType() { + return StateIngredients.TAG; } public Stream resolve() { @@ -47,14 +57,6 @@ public BlockState pick(Random random) { return values.get(random.nextInt(values.size())).defaultBlockState(); } - @Override - public JsonObject serialize() { - JsonObject object = new JsonObject(); - object.addProperty("type", "tag"); - object.addProperty("tag", tag.location().toString()); - return object; - } - @Override public List getDisplayedStacks() { return resolve() @@ -74,8 +76,8 @@ public List getDisplayed() { return resolve().map(Block::defaultBlockState).collect(Collectors.toList()); } - public ResourceLocation getTagId() { - return tag.location(); + public TagKey getTag() { + return tag; } @Override @@ -98,4 +100,25 @@ public int hashCode() { public String toString() { return "StateIngredientTag{" + tag + "}"; } + + + public static class Type implements StateIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + TagKey.hashedCodec(Registries.BLOCK).fieldOf("tag").forGetter(StateIngredientTag::getTag) + ).apply(instance, StateIngredientTag::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ResourceLocation.STREAM_CODEC.map(id -> TagKey.create(Registries.BLOCK, id), TagKey::location), StateIngredientTag::getTag, + StateIngredientTag::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java index b77dd7ddc3..3a98e24de3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java @@ -1,8 +1,13 @@ package at.petrak.hexcasting.common.recipe.ingredient; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.TagKey; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; @@ -16,11 +21,16 @@ public class StateIngredientTagExcluding extends StateIngredientTag { private final List excludes; - public StateIngredientTagExcluding(ResourceLocation id, Collection excludes) { - super(id); + public StateIngredientTagExcluding(TagKey tag, Collection excludes) { + super(tag); this.excludes = List.copyOf(excludes); } + @Override + public StateIngredientType getType() { + return StateIngredients.TAG_EXCLUDING; + } + @Override public boolean test(BlockState state) { if (!super.test(state)) { @@ -57,19 +67,6 @@ public int hashCode() { return super.hashCode(); } - @Override - public JsonObject serialize() { - JsonObject object = new JsonObject(); - object.addProperty("type", "tag_excluding"); - object.addProperty("tag", getTagId().toString()); - JsonArray array = new JsonArray(); - for (StateIngredient exclude : excludes) { - array.add(exclude.serialize()); - } - object.add("exclude", array); - return object; - } - @Override public List getDisplayedStacks() { return getBlocks().stream() @@ -92,4 +89,30 @@ public List getDisplayed() { .filter(this::isNotExcluded) .toList(); } + + public List getExcludes() { + return excludes; + } + + public static class Type implements StateIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + TagKey.hashedCodec(Registries.BLOCK).fieldOf("tag").forGetter(StateIngredientTagExcluding::getTag), + StateIngredients.TYPED_CODEC.listOf().fieldOf("excludes").forGetter(StateIngredientTagExcluding::getExcludes) + ).apply(instance, StateIngredientTagExcluding::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ResourceLocation.STREAM_CODEC.map(id -> TagKey.create(Registries.BLOCK, id), TagKey::location), StateIngredientTagExcluding::getTag, + StateIngredients.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), StateIngredientTagExcluding::getExcludes, + StateIngredientTagExcluding::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java new file mode 100644 index 0000000000..33d0ecfd8b --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java @@ -0,0 +1,12 @@ +package at.petrak.hexcasting.common.recipe.ingredient; + +import com.mojang.serialization.MapCodec; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; + +public interface StateIngredientType { + + MapCodec codec(); + + StreamCodec streamCodec(); +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java new file mode 100644 index 0000000000..6c39c20f24 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java @@ -0,0 +1,95 @@ +package at.petrak.hexcasting.common.recipe.ingredient; + +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.TagKey; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.List; +import java.util.Random; +import java.util.function.BiConsumer; + +public class StateIngredients { + public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE + .getStateIngredientRegistry() + .byNameCodec() + .dispatch("type", StateIngredient::getType, StateIngredientType::codec)); + public static final StreamCodec TYPED_STREAM_CODEC = ByteBufCodecs + .registry(HexRegistries.STATE_INGREDIENT) + .dispatch(StateIngredient::getType, StateIngredientType::streamCodec); + + public static final StateIngredientType BLOCK_TYPE = new StateIngredientBlock.Type(); + public static final StateIngredientType BLOCK_STATE = new StateIngredientBlockState.Type(); + public static final StateIngredientType BLOCKS = new StateIngredientBlocks.Type(); + public static final StateIngredientType TAG = new StateIngredientTag.Type(); + public static final StateIngredientType TAG_EXCLUDING = new StateIngredientTagExcluding.Type(); + + public static final StateIngredientType NONE_TYPE = new StateIngredientType<>() { + @Override + public MapCodec codec() { + return MapCodec.unit(NONE); + } + + @Override + public StreamCodec streamCodec() { + return StreamCodec.unit(NONE); + } + }; + + public static final StateIngredient NONE = new StateIngredient() { + @Override + public boolean test(BlockState state) { + return true; + } + + @Override + public BlockState pick(Random random) { + throw new UnsupportedOperationException("Should never try to pick from NONE state ingredient"); + } + + @Override + public StateIngredientType getType() { + return NONE_TYPE; + } + + @Override + public List getDisplayedStacks() { + return List.of(); + } + + @Override + public List getDisplayed() { + return List.of(); + } + }; + + public static void register(BiConsumer, ResourceLocation> r) { + r.accept(NONE_TYPE, HexAPI.modLoc("none")); + r.accept(BLOCK_TYPE, HexAPI.modLoc("block")); + r.accept(BLOCK_STATE, HexAPI.modLoc("state")); + r.accept(BLOCKS, HexAPI.modLoc("blocks")); + r.accept(TAG, HexAPI.modLoc("tag")); + r.accept(TAG_EXCLUDING, HexAPI.modLoc("tag_excluding")); + } + + public static StateIngredient of(Block block) { + return new StateIngredientBlock(block); + } + + public static StateIngredient of(BlockState state) { + return new StateIngredientBlockState(state); + } + + public static StateIngredient of(TagKey tag) { + return new StateIngredientTag(tag); + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java index 6e777cc2d0..16cc965a18 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java @@ -21,21 +21,15 @@ // // .equals must make sense public abstract class BrainsweepeeIngredient { + + public abstract BrainsweepeeIngredientType getType(); + public abstract boolean test(Entity entity, ServerLevel level); public abstract Component getName(); public abstract List getTooltip(boolean advanced); - public abstract JsonObject serialize(); - - public void wrapWrite(FriendlyByteBuf buf) { - buf.writeEnum(this.ingrType()); - this.write(buf); - } - - public abstract void write(FriendlyByteBuf buf); - /** * For the benefit of showing to the client, return an example of the entity. *

@@ -44,41 +38,6 @@ public void wrapWrite(FriendlyByteBuf buf) { @Nullable public abstract Entity exampleEntity(Level level); - public abstract Type ingrType(); - - public abstract String getSomeKindOfReasonableIDForEmi(); - - public static BrainsweepeeIngredient read(FriendlyByteBuf buf) { - var type = buf.readEnum(Type.class); - return switch (type) { - case VILLAGER -> VillagerIngredient.read(buf); - case ENTITY_TYPE -> EntityTypeIngredient.read(buf); - case ENTITY_TAG -> EntityTagIngredient.read(buf); - }; - } - - public static BrainsweepeeIngredient deserialize(JsonObject json) { - var typestr = GsonHelper.getAsString(json, "type"); - var type = Type.valueOf(typestr.toUpperCase(Locale.ROOT)); - return switch (type) { - case VILLAGER -> VillagerIngredient.deserialize(json); - case ENTITY_TYPE -> EntityTypeIngredient.deserialize(json); - case ENTITY_TAG -> EntityTagIngredient.deserialize(json); - }; - } - - // TODO: make this a registry? - public enum Type implements StringRepresentable { - VILLAGER, - ENTITY_TYPE, - ENTITY_TAG; - - @Override - public String getSerializedName() { - return this.name().toLowerCase(Locale.ROOT); - } - } - public static Component getModNameComponent(String namespace) { String mod = IXplatAbstractions.INSTANCE.getModName(namespace); return Component.literal(mod).withStyle(ChatFormatting.BLUE, ChatFormatting.ITALIC); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredientType.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredientType.java new file mode 100644 index 0000000000..1b493d7141 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredientType.java @@ -0,0 +1,12 @@ +package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; + +import com.mojang.serialization.MapCodec; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; + +public interface BrainsweepeeIngredientType { + + MapCodec codec(); + + StreamCodec streamCodec(); +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java new file mode 100644 index 0000000000..d1e4674fe7 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java @@ -0,0 +1,107 @@ +package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; + +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.common.recipe.ingredient.*; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.tags.TagKey; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.npc.VillagerProfession; +import net.minecraft.world.entity.npc.VillagerType; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Random; +import java.util.function.BiConsumer; + +public class BrainsweepeeIngredients { + public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE + .getBrainsweepeeIngredientRegistry() + .byNameCodec() + .dispatch("type", BrainsweepeeIngredient::getType, BrainsweepeeIngredientType::codec)); + public static final StreamCodec TYPED_STREAM_CODEC = ByteBufCodecs + .registry(HexRegistries.BRAINSWEEPEE_INGREDIENT) + .dispatch(BrainsweepeeIngredient::getType, BrainsweepeeIngredientType::streamCodec); + + public static final BrainsweepeeIngredientType ENTITY_TYPE = new EntityTypeIngredient.Type(); + public static final BrainsweepeeIngredientType TAG = new EntityTagIngredient.Type(); + public static final BrainsweepeeIngredientType VILLAGER = new VillagerIngredient.Type(); + + public static final BrainsweepeeIngredientType NONE_TYPE = new BrainsweepeeIngredientType<>() { + @Override + public MapCodec codec() { + return MapCodec.unit(NONE); + } + + @Override + public StreamCodec streamCodec() { + return StreamCodec.unit(NONE); + } + }; + + public static final BrainsweepeeIngredient NONE = new BrainsweepeeIngredient() { + + @Override + public BrainsweepeeIngredientType getType() { + return NONE_TYPE; + } + + @Override + public boolean test(Entity entity, ServerLevel level) { + return false; + } + + @Override + public Component getName() { + return Component.literal("none"); + } + + @Override + public List getTooltip(boolean advanced) { + return List.of(); + } + + @Override + public @Nullable Entity exampleEntity(Level level) { + return null; + } + }; + + public static void register(BiConsumer, ResourceLocation> r) { + r.accept(NONE_TYPE, HexAPI.modLoc("none")); + r.accept(ENTITY_TYPE, HexAPI.modLoc("entity_type")); + r.accept(TAG, HexAPI.modLoc("entity_tag")); + r.accept(VILLAGER, HexAPI.modLoc("villager")); + } + + public static BrainsweepeeIngredient of(EntityType entityType) { + return new EntityTypeIngredient(entityType); + } + + public static BrainsweepeeIngredient of(TagKey> tagKey) { + return new EntityTagIngredient(tagKey); + } + + public static BrainsweepeeIngredient of( + @Nullable VillagerProfession profession, + @Nullable VillagerType biome, + int minLevel + ) { + return new VillagerIngredient(profession, biome, minLevel); + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java index cb6b0a0912..978b0d4cce 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java @@ -1,17 +1,17 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; -import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.tags.TagKey; -import net.minecraft.util.GsonHelper; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.level.Level; @@ -27,6 +27,15 @@ public EntityTagIngredient(TagKey> tag) { this.entityTypeTag = tag; } + @Override + public BrainsweepeeIngredientType getType() { + return BrainsweepeeIngredients.TAG; + } + + public TagKey> getTag() { + return entityTypeTag; + } + @Override public boolean test(Entity entity, ServerLevel level) { return entity.getType().is(this.entityTypeTag); @@ -79,49 +88,6 @@ public Entity exampleEntity(Level level) { } } - @Override - public JsonObject serialize() { - var obj = new JsonObject(); - obj.addProperty("type", Type.ENTITY_TAG.getSerializedName()); - - obj.addProperty("tag", this.entityTypeTag.location().toString()); - - return obj; - } - - @Override - public void write(FriendlyByteBuf buf) { - buf.writeResourceLocation(this.entityTypeTag.location()); - } - - public static EntityTagIngredient deserialize(JsonObject obj) { - var tagLoc = ResourceLocation.tryParse(GsonHelper.getAsString(obj, "tag")); - if (tagLoc == null) { - throw new IllegalArgumentException("unknown tag " + obj); - } - var type = TagKey.create(Registries.ENTITY_TYPE, tagLoc); - return new EntityTagIngredient(type); - } - - public static EntityTagIngredient read(FriendlyByteBuf buf) { - var typeLoc = buf.readResourceLocation(); - var type = TagKey.create(Registries.ENTITY_TYPE, typeLoc); - return new EntityTagIngredient(type); - } - - @Override - public Type ingrType() { - return Type.ENTITY_TAG; - } - - @Override - public String getSomeKindOfReasonableIDForEmi() { - var resloc = this.entityTypeTag.location(); - return resloc.getNamespace() - + "//" - + resloc.getPath(); - } - @Override public boolean equals(Object o) { if (this == o) return true; @@ -134,4 +100,25 @@ public boolean equals(Object o) { public int hashCode() { return Objects.hashCode(this.entityTypeTag); } + + + public static class Type implements BrainsweepeeIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + TagKey.hashedCodec(Registries.ENTITY_TYPE).fieldOf("tag").forGetter(EntityTagIngredient::getTag) + ).apply(instance, EntityTagIngredient::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ResourceLocation.STREAM_CODEC.map(id -> TagKey.create(Registries.ENTITY_TYPE, id), TagKey::location), EntityTagIngredient::getTag, + EntityTagIngredient::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java index f510c17d2e..68383eda31 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java @@ -1,10 +1,15 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; import com.google.gson.JsonObject; -import net.minecraft.core.Registry; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.GsonHelper; @@ -22,6 +27,15 @@ public EntityTypeIngredient(EntityType entityType) { this.entityType = entityType; } + @Override + public BrainsweepeeIngredientType getType() { + return BrainsweepeeIngredients.ENTITY_TYPE; + } + + public EntityType getEntityType() { + return entityType; + } + @Override public boolean test(Entity entity, ServerLevel level) { // entity types are singletons @@ -46,46 +60,6 @@ public Entity exampleEntity(Level level) { return this.entityType.create(level); } - @Override - public JsonObject serialize() { - var obj = new JsonObject(); - obj.addProperty("type", Type.ENTITY_TYPE.getSerializedName()); - obj.addProperty("entityType", BuiltInRegistries.ENTITY_TYPE.getKey(this.entityType).toString()); - - return obj; - } - - @Override - public void write(FriendlyByteBuf buf) { - buf.writeVarInt(BuiltInRegistries.ENTITY_TYPE.getId(this.entityType)); - } - - public static EntityTypeIngredient deserialize(JsonObject obj) { - var typeLoc = ResourceLocation.tryParse(GsonHelper.getAsString(obj, "entityType")); - if (typeLoc == null || !BuiltInRegistries.ENTITY_TYPE.containsKey(typeLoc)) { - throw new IllegalArgumentException("unknown entity type " + typeLoc); - } - return new EntityTypeIngredient(BuiltInRegistries.ENTITY_TYPE.get(typeLoc)); - } - - public static EntityTypeIngredient read(FriendlyByteBuf buf) { - var tyId = buf.readVarInt(); - return new EntityTypeIngredient(BuiltInRegistries.ENTITY_TYPE.byId(tyId)); - } - - @Override - public Type ingrType() { - return Type.ENTITY_TYPE; - } - - @Override - public String getSomeKindOfReasonableIDForEmi() { - var resloc = BuiltInRegistries.ENTITY_TYPE.getKey(this.entityType); - return resloc.getNamespace() - + "//" - + resloc.getPath(); - } - @Override public boolean equals(Object o) { if (this == o) return true; @@ -98,4 +72,25 @@ public boolean equals(Object o) { public int hashCode() { return Objects.hash(entityType); } + + + public static class Type implements BrainsweepeeIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + BuiltInRegistries.ENTITY_TYPE.byNameCodec().fieldOf("entityType").forGetter(EntityTypeIngredient::getEntityType) + ).apply(instance, EntityTypeIngredient::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.registry(Registries.ENTITY_TYPE), EntityTypeIngredient::getEntityType, + EntityTypeIngredient::new + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java index d3cf2e63ef..ab91129415 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java @@ -1,13 +1,20 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.GsonHelper; @@ -22,6 +29,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Objects; +import java.util.Optional; /** * Special case for villagers so we can have biome/profession/level reqs @@ -41,6 +49,23 @@ public VillagerIngredient( this.minLevel = minLevel; } + @Override + public BrainsweepeeIngredientType getType() { + return BrainsweepeeIngredients.VILLAGER; + } + + public @Nullable VillagerProfession getProfession() { + return profession; + } + + public @Nullable VillagerType getBiome() { + return biome; + } + + public int getMinLevel() { + return minLevel; + } + @Override public boolean test(Entity entity, ServerLevel level) { if (!(entity instanceof Villager villager)) return false; @@ -149,97 +174,6 @@ public Component getName() { return component; } - @Override - public JsonObject serialize() { - var obj = new JsonObject(); - obj.addProperty("type", Type.VILLAGER.getSerializedName()); - - if (this.profession != null) { - obj.addProperty("profession", this.profession.toString()); - } - if (this.biome != null) { - obj.addProperty("biome", this.biome.toString()); - } - obj.addProperty("minLevel", this.minLevel); - return obj; - } - - @Override - public void write(FriendlyByteBuf buf) { - if (this.profession != null) { - buf.writeVarInt(1); - buf.writeVarInt(BuiltInRegistries.VILLAGER_PROFESSION.getId(this.profession)); - } else { - buf.writeVarInt(0); - } - if (this.biome != null) { - buf.writeVarInt(1); - buf.writeVarInt(BuiltInRegistries.VILLAGER_TYPE.getId(this.biome)); - } else { - buf.writeVarInt(0); - } - buf.writeInt(this.minLevel); - } - - public static VillagerIngredient deserialize(JsonObject json) { - VillagerProfession profession = null; - if (json.has("profession") && !json.get("profession").isJsonNull()) { - profession = BuiltInRegistries.VILLAGER_PROFESSION.get(new ResourceLocation(GsonHelper.getAsString(json, - "profession"))); - } - VillagerType biome = null; - if (json.has("biome") && !json.get("biome").isJsonNull()) { - biome = BuiltInRegistries.VILLAGER_TYPE.get(new ResourceLocation(GsonHelper.getAsString(json, "biome"))); - } - int minLevel = GsonHelper.getAsInt(json, "minLevel"); - return new VillagerIngredient(profession, biome, minLevel); - } - - public static VillagerIngredient read(FriendlyByteBuf buf) { - VillagerProfession profession = null; - var hasProfession = buf.readVarInt(); - if (hasProfession != 0) { - profession = BuiltInRegistries.VILLAGER_PROFESSION.byId(buf.readVarInt()); - } - VillagerType biome = null; - var hasBiome = buf.readVarInt(); - if (hasBiome != 0) { - biome = BuiltInRegistries.VILLAGER_TYPE.byId(buf.readVarInt()); - } - int minLevel = buf.readInt(); - return new VillagerIngredient(profession, biome, minLevel); - } - - @Override - public Type ingrType() { - return Type.VILLAGER; - } - - @Override - public String getSomeKindOfReasonableIDForEmi() { - var bob = new StringBuilder(); - if (this.profession != null) { - var profLoc = BuiltInRegistries.VILLAGER_PROFESSION.getKey(this.profession); - bob.append(profLoc.getNamespace()) - .append("//") - .append(profLoc.getPath()); - } else { - bob.append("null"); - } - bob.append("_"); - if (this.biome != null) { - var biomeLoc = BuiltInRegistries.VILLAGER_TYPE.getKey(this.biome); - bob.append(biomeLoc.getNamespace()) - .append("//") - .append(biomeLoc.getPath()); - } else { - bob.append("null"); - } - - bob.append(this.minLevel); - return bob.toString(); - } - @Override public boolean equals(Object o) { if (this == o) return true; @@ -253,4 +187,29 @@ public boolean equals(Object o) { public int hashCode() { return Objects.hash(profession, biome, minLevel); } + + + public static class Type implements BrainsweepeeIngredientType { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + BuiltInRegistries.VILLAGER_PROFESSION.byNameCodec().optionalFieldOf("profession").forGetter(ing -> Optional.ofNullable(ing.getProfession())), + BuiltInRegistries.VILLAGER_TYPE.byNameCodec().optionalFieldOf("biome").forGetter(ing -> Optional.ofNullable(ing.getBiome())), + Codec.INT.fieldOf("minLevel").forGetter(VillagerIngredient::getMinLevel) + ).apply(instance, (a, b, c) -> new VillagerIngredient(a.orElse(null), b.orElse(null), c))); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.optional(ByteBufCodecs.registry(Registries.VILLAGER_PROFESSION)), ing -> Optional.ofNullable(ing.getProfession()), + ByteBufCodecs.optional(ByteBufCodecs.registry(Registries.VILLAGER_TYPE)), ing -> Optional.ofNullable(ing.getBiome()), + ByteBufCodecs.VAR_INT, VillagerIngredient::getMinLevel, + (a, b, c) -> new VillagerIngredient(a.orElse(null), b.orElse(null), c) + ); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java index d095b06044..9aa505a229 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java @@ -1,31 +1,28 @@ package at.petrak.hexcasting.datagen; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.api.advancements.FailToCastGreatSpellTrigger; -import at.petrak.hexcasting.api.advancements.MinMaxLongs; -import at.petrak.hexcasting.api.advancements.OvercastTrigger; -import at.petrak.hexcasting.api.advancements.SpendMediaTrigger; +import at.petrak.hexcasting.api.advancements.*; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.items.ItemLoreFragment; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.paucal.api.datagen.PaucalAdvancementSubProvider; -import net.minecraft.advancements.Advancement; -import net.minecraft.advancements.DisplayInfo; -import net.minecraft.advancements.FrameType; +import net.minecraft.advancements.*; import net.minecraft.advancements.critereon.*; import net.minecraft.core.HolderLookup; +import net.minecraft.core.registries.Registries; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; +import java.util.Optional; import java.util.function.Consumer; public class HexAdvancements extends PaucalAdvancementSubProvider { public static final OvercastTrigger.Instance ENLIGHTEN = - new OvercastTrigger.Instance(ContextAwarePredicate.ANY, + new OvercastTrigger.Instance(Optional.empty(), MinMaxBounds.Ints.ANY, // add a little bit of slop here. use 80% or more health ... MinMaxBounds.Doubles.atLeast(0.8), @@ -39,15 +36,15 @@ public HexAdvancements() { } @Override - public void generate(HolderLookup.Provider provider, Consumer consumer) { + public void generate(HolderLookup.Provider provider, Consumer consumer) { var root = Advancement.Builder.advancement() // what an ergonomic design decision // i am so happy that data generators are the future .display(new DisplayInfo(new ItemStack(Items.BUDDING_AMETHYST), Component.translatable("advancement.hexcasting:root"), Component.translatable("advancement.hexcasting:root.desc"), - new ResourceLocation("minecraft", "textures/block/calcite.png"), - FrameType.TASK, true, true, true)) + Optional.of(ResourceLocation.withDefaultNamespace("textures/block/calcite.png")), + AdvancementType.TASK, true, true, true)) // the only thing making this vaguely tolerable is the knowledge the json files are worse somehow .addCriterion("has_charged_amethyst", InventoryChangeTrigger.TriggerInstance.hasItems( ItemPredicate.Builder.item().of(HexTags.Items.GRANTS_ROOT_ADVANCEMENT).build())) @@ -58,8 +55,8 @@ public void generate(HolderLookup.Provider provider, Consumer consu .display(new DisplayInfo(new ItemStack(HexItems.CREATIVE_UNLOCKER), Component.translatable("advancement.hexcasting:creative_unlocker"), Component.translatable("advancement.hexcasting:creative_unlocker.desc"), - new ResourceLocation("minecraft", "textures/block/calcite.png"), - FrameType.TASK, true, false, true)) + Optional.of(ResourceLocation.withDefaultNamespace("textures/block/calcite.png")), + AdvancementType.TASK, true, false, true)) .parent(root) .addCriterion("has_creative_unlocker", InventoryChangeTrigger.TriggerInstance.hasItems( ItemPredicate.Builder.item().of(HexItems.CREATIVE_UNLOCKER).build())) @@ -67,62 +64,72 @@ public void generate(HolderLookup.Provider provider, Consumer consu // weird names so we have alphabetical parity Advancement.Builder.advancement() - .display(simpleDisplay(Items.GLISTERING_MELON_SLICE, "wasteful_cast", FrameType.TASK)) + .display(simpleDisplay(Items.GLISTERING_MELON_SLICE, "wasteful_cast", AdvancementType.TASK)) .parent(root) - .addCriterion("waste_amt", new SpendMediaTrigger.Instance(ContextAwarePredicate.ANY, - MinMaxLongs.ANY, - MinMaxLongs.atLeast(89 * MediaConstants.DUST_UNIT / 10))) + .addCriterion("waste_amt", new Criterion<>( + HexAdvancementTriggers.SPEND_MEDIA_TRIGGER, + new SpendMediaTrigger.Instance(Optional.empty(), + MinMaxLongs.ANY, + MinMaxLongs.atLeast(89 * MediaConstants.DUST_UNIT / 10)) + )) .save(consumer, prefix("aaa_wasteful_cast")); Advancement.Builder.advancement() - .display(simpleDisplay(HexItems.CHARGED_AMETHYST, "big_cast", FrameType.TASK)) + .display(simpleDisplay(HexItems.CHARGED_AMETHYST, "big_cast", AdvancementType.TASK)) .parent(root) - .addCriterion("cast_amt", new SpendMediaTrigger.Instance(ContextAwarePredicate.ANY, - MinMaxLongs.atLeast(64 * MediaConstants.CRYSTAL_UNIT), - MinMaxLongs.ANY)) + .addCriterion("cast_amt", new Criterion<>( + HexAdvancementTriggers.SPEND_MEDIA_TRIGGER, + new SpendMediaTrigger.Instance(Optional.empty(), + MinMaxLongs.atLeast(64 * MediaConstants.CRYSTAL_UNIT), + MinMaxLongs.ANY) + )) .save(consumer, prefix("aab_big_cast")); var impotence = Advancement.Builder.advancement() - .display(simpleDisplay(Items.BLAZE_POWDER, "y_u_no_cast_angy", FrameType.TASK)) + .display(simpleDisplay(Items.BLAZE_POWDER, "y_u_no_cast_angy", AdvancementType.TASK)) .parent(root) .addCriterion("did_the_thing", - new FailToCastGreatSpellTrigger.Instance(ContextAwarePredicate.ANY)) + new Criterion<>(HexAdvancementTriggers.FAIL_GREAT_SPELL_TRIGGER, + new FailToCastGreatSpellTrigger.Instance(Optional.empty()))) .save(consumer, prefix("y_u_no_cast_angy")); var opened_eyes = Advancement.Builder.advancement() - .display(simpleDisplay(Items.ENDER_EYE, "opened_eyes", FrameType.TASK)) + .display(simpleDisplay(Items.ENDER_EYE, "opened_eyes", AdvancementType.TASK)) .parent(impotence) .addCriterion("health_used", - new OvercastTrigger.Instance(ContextAwarePredicate.ANY, - MinMaxBounds.Ints.ANY, - MinMaxBounds.Doubles.ANY, - // you can't just kill yourself - MinMaxBounds.Doubles.atLeast(0.0))) + new Criterion<>( + HexAdvancementTriggers.OVERCAST_TRIGGER, + new OvercastTrigger.Instance(Optional.empty(), + MinMaxBounds.Ints.ANY, + MinMaxBounds.Doubles.ANY, + // you can't just kill yourself + MinMaxBounds.Doubles.atLeast(0.0))) + ) .save(consumer, prefix("opened_eyes")); Advancement.Builder.advancement() .display(new DisplayInfo(new ItemStack(Items.MUSIC_DISC_11), Component.translatable("advancement.hexcasting:enlightenment"), Component.translatable("advancement.hexcasting:enlightenment.desc"), - null, - FrameType.CHALLENGE, true, true, true)) + Optional.empty(), + AdvancementType.CHALLENGE, true, true, true)) .parent(opened_eyes) - .addCriterion("health_used", ENLIGHTEN) + .addCriterion("health_used", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, ENLIGHTEN)) .save(consumer, prefix("enlightenment")); var loreRoot = Advancement.Builder.advancement() - .display(simpleDisplayWithBackground(HexBlocks.AKASHIC_LIGATURE, "lore", FrameType.GOAL, + .display(simpleDisplayWithBackground(HexBlocks.AKASHIC_LIGATURE, "lore", AdvancementType.GOAL, modLoc("textures/block/slate.png"))) - .addCriterion("used_item", new ConsumeItemTrigger.TriggerInstance(ContextAwarePredicate.ANY, - ItemPredicate.Builder.item().of(HexItems.LORE_FRAGMENT).build())) + .addCriterion("used_item", new Criterion<>(CriteriaTriggers.CONSUME_ITEM, new ConsumeItemTrigger.TriggerInstance(Optional.empty(), + Optional.of(ItemPredicate.Builder.item().of(HexItems.LORE_FRAGMENT).build())))) .save(consumer, prefix("lore")); for (var advId : ItemLoreFragment.NAMES) { Advancement.Builder.advancement() .display(new DisplayInfo(new ItemStack(HexItems.LORE_FRAGMENT), Component.translatable("advancement." + advId), Component.empty(), - null, FrameType.TASK, true, true, true)) + Optional.empty(), AdvancementType.TASK, true, true, true)) .parent(loreRoot) - .addCriterion(ItemLoreFragment.CRITEREON_KEY, new ImpossibleTrigger.TriggerInstance()) + .addCriterion(ItemLoreFragment.CRITEREON_KEY, new Criterion<>(CriteriaTriggers.IMPOSSIBLE, new ImpossibleTrigger.TriggerInstance())) .save(consumer, advId.toString()); } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java index 386320703c..071842dd0d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java @@ -3,17 +3,21 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.blocks.circles.BlockEntitySlate; import at.petrak.hexcasting.common.lib.HexBlocks; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.loot.HexLootHandler; import at.petrak.hexcasting.xplat.IXplatAbstractions; import at.petrak.paucal.api.datagen.PaucalLootTableSubProvider; -import net.minecraft.advancements.critereon.EnchantmentPredicate; -import net.minecraft.advancements.critereon.ItemPredicate; -import net.minecraft.advancements.critereon.MinMaxBounds; -import net.minecraft.advancements.critereon.StatePropertiesPredicate; +import net.minecraft.advancements.critereon.*; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.component.DataComponentPredicate; +import net.minecraft.core.component.DataComponents; +import net.minecraft.core.registries.Registries; import net.minecraft.data.DataProvider; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; +import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.DoorBlock; @@ -26,23 +30,27 @@ import net.minecraft.world.level.storage.loot.entries.LootItem; import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount; import net.minecraft.world.level.storage.loot.functions.ApplyExplosionDecay; -import net.minecraft.world.level.storage.loot.functions.CopyNbtFunction; +import net.minecraft.world.level.storage.loot.functions.CopyComponentsFunction; import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction; import net.minecraft.world.level.storage.loot.predicates.*; import net.minecraft.world.level.storage.loot.providers.nbt.ContextNbtProvider; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator; +import java.util.List; import java.util.Map; public class HexLootTables extends PaucalLootTableSubProvider { - public HexLootTables() { + private final HolderLookup.Provider registries; + + public HexLootTables(HolderLookup.Provider registries) { super(HexAPI.MOD_ID); + this.registries = registries; } @Override protected void makeLootTables(Map blockTables, - Map lootTables) { + Map, LootTable.Builder> lootTables) { dropSelf(blockTables, HexBlocks.IMPETUS_EMPTY, HexBlocks.IMPETUS_RIGHTCLICK, HexBlocks.IMPETUS_LOOK, HexBlocks.IMPETUS_REDSTONE, HexBlocks.EMPTY_DIRECTRIX, HexBlocks.DIRECTRIX_REDSTONE, HexBlocks.DIRECTRIX_BOOLEAN, @@ -61,17 +69,20 @@ protected void makeLootTables(Map blockTables, HexBlocks.EDIFIED_TRAPDOOR, HexBlocks.EDIFIED_STAIRS, HexBlocks.EDIFIED_FENCE, HexBlocks.EDIFIED_FENCE_GATE, HexBlocks.EDIFIED_PRESSURE_PLATE, HexBlocks.EDIFIED_BUTTON); + HolderLookup.RegistryLookup enchRegistryLookup = this.registries.lookupOrThrow(Registries.ENCHANTMENT); + makeSlabTable(blockTables, HexBlocks.EDIFIED_SLAB); - makeLeafTable(blockTables, HexBlocks.AMETHYST_EDIFIED_LEAVES); - makeLeafTable(blockTables, HexBlocks.AVENTURINE_EDIFIED_LEAVES); - makeLeafTable(blockTables, HexBlocks.CITRINE_EDIFIED_LEAVES); + makeLeafTable(blockTables, HexBlocks.AMETHYST_EDIFIED_LEAVES, enchRegistryLookup); + makeLeafTable(blockTables, HexBlocks.AVENTURINE_EDIFIED_LEAVES, enchRegistryLookup); + makeLeafTable(blockTables, HexBlocks.CITRINE_EDIFIED_LEAVES, enchRegistryLookup); var slatePool = LootPool.lootPool() .setRolls(ConstantValue.exactly(1)) .add(LootItem.lootTableItem(HexBlocks.SLATE) - .apply(CopyNbtFunction.copyData(ContextNbtProvider.BLOCK_ENTITY) - .copy(BlockEntitySlate.TAG_PATTERN, "BlockEntityTag." + BlockEntitySlate.TAG_PATTERN))); + .apply(CopyComponentsFunction.copyComponents(CopyComponentsFunction.Source.BLOCK_ENTITY) + .include(HexDataComponents.PATTERN) + )); blockTables.put(HexBlocks.SLATE, LootTable.lootTable().withPool(slatePool)); var doorPool = dropThisPool(HexBlocks.EDIFIED_DOOR, 1) @@ -80,10 +91,13 @@ protected void makeLootTables(Map blockTables, )); blockTables.put(HexBlocks.EDIFIED_DOOR, LootTable.lootTable().withPool(doorPool)); - var silkTouchCond = MatchTool.toolMatches( - ItemPredicate.Builder.item().hasEnchantment( - new EnchantmentPredicate(Enchantments.SILK_TOUCH, MinMaxBounds.Ints.ANY))); + ItemPredicate.Builder.item().withSubPredicate( + ItemSubPredicates.ENCHANTMENTS, + ItemEnchantmentsPredicate.enchantments( + List.of(new EnchantmentPredicate(enchRegistryLookup.getOrThrow(Enchantments.SILK_TOUCH), MinMaxBounds.Ints.atLeast(1))) + ) + )); var noSilkTouchCond = silkTouchCond.invert(); var goodAtAmethystingCond = MatchTool.toolMatches( ItemPredicate.Builder.item().of(ItemTags.CLUSTER_MAX_HARVESTABLES) @@ -92,7 +106,7 @@ protected void makeLootTables(Map blockTables, var dustPoolWhenGood = LootPool.lootPool() .add(LootItem.lootTableItem(HexItems.AMETHYST_DUST)) .apply(SetItemCountFunction.setCount(UniformGenerator.between(1, 4))) - .apply(ApplyBonusCount.addOreBonusCount(Enchantments.BLOCK_FORTUNE)) + .apply(ApplyBonusCount.addOreBonusCount(enchRegistryLookup.getOrThrow(Enchantments.FORTUNE))) .when(noSilkTouchCond).when(goodAtAmethystingCond); var dustPoolWhenBad = LootPool.lootPool() @@ -104,7 +118,7 @@ protected void makeLootTables(Map blockTables, .add(LootItem.lootTableItem(HexItems.CHARGED_AMETHYST)) .apply(SetItemCountFunction.setCount(ConstantValue.exactly(1))) .when(noSilkTouchCond).when(goodAtAmethystingCond) - .when(BonusLevelTableCondition.bonusLevelFlatChance(Enchantments.BLOCK_FORTUNE, + .when(BonusLevelTableCondition.bonusLevelFlatChance(enchRegistryLookup.getOrThrow(Enchantments.FORTUNE), 0.25f, 0.35f, 0.5f, 0.75f, 1.0f)); var isThatAnMFingBadBrandonSandersonReference = LootPool.lootPool() @@ -126,19 +140,24 @@ protected void makeLootTables(Map blockTables, LootItem.lootTableItem(HexItems.QUENCHED_SHARD) .apply(SetItemCountFunction.setCount(UniformGenerator.between(2f, 4f))) .apply(SetItemCountFunction.setCount(ConstantValue.exactly(1), true) - .when(BonusLevelTableCondition.bonusLevelFlatChance(Enchantments.BLOCK_FORTUNE, + .when(BonusLevelTableCondition.bonusLevelFlatChance(enchRegistryLookup.getOrThrow(Enchantments.FORTUNE), 0.25f, 0.5f, 0.75f, 1.0f))) )); blockTables.put(HexBlocks.QUENCHED_ALLAY, LootTable.lootTable().withPool(quenchedPool)); } - private void makeLeafTable(Map lootTables, Block block) { + private void makeLeafTable(Map lootTables, Block block, HolderLookup.RegistryLookup enchRegistryLookup) { var leafPool = dropThisPool(block, 1) .when(AnyOfCondition.anyOf( IXplatAbstractions.INSTANCE.isShearsCondition(), MatchTool.toolMatches(ItemPredicate.Builder.item() - .hasEnchantment(new EnchantmentPredicate(Enchantments.SILK_TOUCH, MinMaxBounds.Ints.atLeast(1)))) - )); + .withSubPredicate( + ItemSubPredicates.ENCHANTMENTS, + ItemEnchantmentsPredicate.enchantments( + List.of(new EnchantmentPredicate(enchRegistryLookup.getOrThrow(Enchantments.SILK_TOUCH), MinMaxBounds.Ints.atLeast(1))) + ) + ) + ))); lootTables.put(block, LootTable.lootTable().withPool(leafPool)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index 828c8ad92f..3952657bfe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.datagen.recipe; import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.advancements.HexAdvancementTriggers; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.blocks.decoration.BlockAkashicLog; @@ -9,7 +10,7 @@ import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.recipe.SealThingsRecipe; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.EntityTypeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.VillagerIngredient; import at.petrak.hexcasting.datagen.HexAdvancements; @@ -17,32 +18,42 @@ import at.petrak.hexcasting.datagen.IXplatIngredients; import at.petrak.hexcasting.datagen.recipe.builders.BrainsweepRecipeBuilder; import at.petrak.hexcasting.datagen.recipe.builders.CompatIngredientValue; -import at.petrak.hexcasting.datagen.recipe.builders.CreateCrushingRecipeBuilder; -import at.petrak.hexcasting.datagen.recipe.builders.FarmersDelightCuttingRecipeBuilder; -import at.petrak.paucal.api.datagen.PaucalRecipeProvider; +import net.minecraft.advancements.CriteriaTriggers; +import net.minecraft.advancements.Criterion; +import net.minecraft.advancements.CriterionTriggerInstance; +import net.minecraft.advancements.critereon.InventoryChangeTrigger; +import net.minecraft.advancements.critereon.ItemPredicate; +import net.minecraft.advancements.critereon.MinMaxBounds; +import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.*; import net.minecraft.resources.ResourceLocation; -import net.minecraft.sounds.SoundEvents; +import net.minecraft.server.packs.resources.Resource; import net.minecraft.tags.ItemTags; +import net.minecraft.tags.TagKey; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.npc.VillagerProfession; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.DyeItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.SimpleCraftingRecipeSerializer; +import net.minecraft.world.item.crafting.*; +import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.Blocks; +import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Map; -import java.util.function.Consumer; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; import java.util.function.Function; +import java.util.function.Supplier; + +import static at.petrak.hexcasting.api.HexAPI.modLoc; // TODO: need to do a big refactor of this class cause it's giant and unwieldy, probably as part of #360 -public class HexplatRecipes extends PaucalRecipeProvider { +public class HexplatRecipes extends RecipeProvider { private final IXplatIngredients ingredients; private final Function conditions; @@ -61,17 +72,17 @@ public class HexplatRecipes extends PaucalRecipeProvider { Map.entry(HexBlocks.STRIPPED_EDIFIED_LOG, HexBlocks.STRIPPED_EDIFIED_WOOD) ); - public HexplatRecipes(PackOutput output, IXplatIngredients ingredients, + public HexplatRecipes(PackOutput output, CompletableFuture registries, IXplatIngredients ingredients, Function conditions) { - super(output, HexAPI.MOD_ID); + super(output, registries); this.ingredients = ingredients; this.conditions = conditions; } @Override - public void buildRecipes(Consumer recipes) { - specialRecipe(recipes, SealThingsRecipe.FOCUS_SERIALIZER); - specialRecipe(recipes, SealThingsRecipe.SPELLBOOK_SERIALIZER); + public void buildRecipes(RecipeOutput recipes) { + specialRecipe(recipes, SealThingsRecipe.FOCUS_SERIALIZER, SealThingsRecipe::focus); + specialRecipe(recipes, SealThingsRecipe.SPELLBOOK_SERIALIZER, SealThingsRecipe::spellbook); staffRecipe(recipes, HexItems.STAFF_OAK, Items.OAK_PLANKS); staffRecipe(recipes, HexItems.STAFF_BIRCH, Items.BIRCH_PLANKS); @@ -142,7 +153,8 @@ public void buildRecipes(Consumer recipes) { .define('F', ingredients.goldIngot()) .define('A', HexItems.CHARGED_AMETHYST) // why in god's name does minecraft have two different places for item tags - .define('D', ItemTags.MUSIC_DISCS) + // TODO port: check if good for music discs + .define('D', ItemTags.CREEPER_DROP_MUSIC_DISCS) .pattern(" F ") .pattern("FAF") .pattern(" D ") @@ -195,11 +207,12 @@ public void buildRecipes(Consumer recipes) { gayRecipe(recipes, ItemPridePigment.Type.INTERSEX, Ingredient.of(Items.AZALEA)); gayRecipe(recipes, ItemPridePigment.Type.LESBIAN, Ingredient.of(Items.HONEYCOMB)); gayRecipe(recipes, ItemPridePigment.Type.NONBINARY, Ingredient.of(Items.MOSS_BLOCK)); - gayRecipe(recipes, ItemPridePigment.Type.PANSEXUAL, ingredients.whenModIngredient( + // TODO port: This is neither an item value nor a tag value. + /*gayRecipe(recipes, ItemPridePigment.Type.PANSEXUAL, ingredients.whenModIngredient( Ingredient.of(Items.CARROT), "farmersdelight", CompatIngredientValue.of("farmersdelight:skillet") - )); + ));*/ gayRecipe(recipes, ItemPridePigment.Type.PLURAL, Ingredient.of(Items.REPEATER)); gayRecipe(recipes, ItemPridePigment.Type.TRANSGENDER, Ingredient.of(Items.EGG)); @@ -395,7 +408,7 @@ public void buildRecipes(Consumer recipes) { .pattern("PSS") .pattern("BAB") .pattern("SSP") - .unlockedBy("enlightenment", enlightenment).save(recipes); + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)).save(recipes); ShapedRecipeBuilder.shaped(RecipeCategory.REDSTONE, HexBlocks.EMPTY_DIRECTRIX) .define('C', Items.COMPARATOR) @@ -405,7 +418,7 @@ public void buildRecipes(Consumer recipes) { .pattern("CSS") .pattern("OAO") .pattern("SSC") - .unlockedBy("enlightenment", enlightenment).save(recipes); + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)).save(recipes); ShapedRecipeBuilder.shaped(RecipeCategory.REDSTONE, HexBlocks.AKASHIC_BOOKSHELF) .define('L', HexTags.Items.EDIFIED_LOGS) @@ -414,7 +427,7 @@ public void buildRecipes(Consumer recipes) { /*this is the*/.pattern("LPL") // and what i have for you today is .pattern("CCC") .pattern("LPL") - .unlockedBy("enlightenment", enlightenment).save(recipes); + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)).save(recipes); ShapedRecipeBuilder.shaped(RecipeCategory.REDSTONE, HexBlocks.AKASHIC_LIGATURE, 4) .define('L', HexTags.Items.EDIFIED_LOGS) @@ -425,66 +438,66 @@ public void buildRecipes(Consumer recipes) { .pattern("LPL") .pattern("123") .pattern("LPL") - .unlockedBy("enlightenment", enlightenment).save(recipes); + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)).save(recipes); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(Blocks.AMETHYST_BLOCK), + new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), new VillagerIngredient(null, null, 3), Blocks.BUDDING_AMETHYST.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/budding_amethyst")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.TOOLSMITH, null, 2), HexBlocks.IMPETUS_RIGHTCLICK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/impetus_rightclick")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.FLETCHER, null, 2), HexBlocks.IMPETUS_LOOK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/impetus_look")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.CLERIC, null, 2), HexBlocks.IMPETUS_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/impetus_storedplayer")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.EMPTY_DIRECTRIX), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.MASON, null, 1), HexBlocks.DIRECTRIX_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/directrix_redstone")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.EMPTY_DIRECTRIX), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.SHEPHERD, null, 1), HexBlocks.DIRECTRIX_BOOLEAN.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/directrix_boolean")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.AKASHIC_LIGATURE), + new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.AKASHIC_LIGATURE), new VillagerIngredient(VillagerProfession.LIBRARIAN, null, 5), HexBlocks.AKASHIC_RECORD.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/akashic_record")); // Temporary tests - new BrainsweepRecipeBuilder(StateIngredientHelper.of(Blocks.AMETHYST_BLOCK), + new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), new EntityTypeIngredient(EntityType.ALLAY), HexBlocks.QUENCHED_ALLAY.defaultBlockState(), MediaConstants.CRYSTAL_UNIT) - .unlockedBy("enlightenment", enlightenment) + .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("brainsweep/quench_allay")); // Create compat - this.conditions.apply(new CreateCrushingRecipeBuilder() + /*this.conditions.apply(new CreateCrushingRecipeBuilder() .withInput(Blocks.AMETHYST_CLUSTER) .duration(150) .withOutput(Items.AMETHYST_SHARD, 7) .withOutput(HexItems.AMETHYST_DUST, 5) .withOutput(0.25f, HexItems.CHARGED_AMETHYST)) .whenModLoaded("create") - .save(recipes, new ResourceLocation("create", "crushing/amethyst_cluster")); + .save(recipes, ResourceLocation.fromNamespaceAndPath("create", "crushing/amethyst_cluster")); this.conditions.apply(new CreateCrushingRecipeBuilder() .withInput(Blocks.AMETHYST_BLOCK) @@ -492,7 +505,7 @@ public void buildRecipes(Consumer recipes) { .withOutput(Items.AMETHYST_SHARD, 3) .withOutput(0.5f, HexItems.AMETHYST_DUST, 4)) .whenModLoaded("create") - .save(recipes, new ResourceLocation("create", "crushing/amethyst_block")); + .save(recipes, ResourceLocation.fromNamespaceAndPath("create", "crushing/amethyst_block")); this.conditions.apply(new CreateCrushingRecipeBuilder() .withInput(Items.AMETHYST_SHARD) @@ -535,14 +548,14 @@ public void buildRecipes(Consumer recipes) { .withTool(ingredients.axeDig()) .withOutput(HexBlocks.EDIFIED_PLANKS)) .whenModLoaded("farmersdelight") - .save(recipes, modLoc("compat/farmersdelight/cutting/akashic_door")); + .save(recipes, modLoc("compat/farmersdelight/cutting/akashic_door"));*/ } - private void staffRecipe(Consumer recipes, ItemStaff staff, Item plank) { + private void staffRecipe(RecipeOutput recipes, ItemStaff staff, Item plank) { staffRecipe(recipes, staff, Ingredient.of(plank)); } - private void staffRecipe(Consumer recipes, ItemStaff staff, Ingredient plank) { + private void staffRecipe(RecipeOutput recipes, ItemStaff staff, Ingredient plank) { ShapedRecipeBuilder.shaped(RecipeCategory.TOOLS, staff) .define('W', plank) .define('S', Items.STICK) @@ -554,7 +567,7 @@ private void staffRecipe(Consumer recipes, ItemStaff staff, Ingr .save(recipes); } - private void gayRecipe(Consumer recipes, ItemPridePigment.Type type, Ingredient material) { + private void gayRecipe(RecipeOutput recipes, ItemPridePigment.Type type, Ingredient material) { var colorizer = HexItems.PRIDE_PIGMENTS.get(type); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, colorizer) .define('D', HexItems.AMETHYST_DUST) @@ -566,8 +579,148 @@ private void gayRecipe(Consumer recipes, ItemPridePigment.Type t .save(recipes); } - private void specialRecipe(Consumer consumer, SimpleCraftingRecipeSerializer serializer) { + private > void specialRecipe(RecipeOutput consumer, RecipeSerializer serializer, Function recipeFunc) { var name = BuiltInRegistries.RECIPE_SERIALIZER.getKey(serializer); - SpecialRecipeBuilder.special(serializer).save(consumer, HexAPI.MOD_ID + ":dynamic" + name.getPath()); + SpecialRecipeBuilder.special(recipeFunc::apply).save(consumer, HexAPI.MOD_ID + ":dynamic" + name.getPath()); + } + + protected static Criterion hasItem(ItemLike p_125978_) { + return paucalInventoryTrigger(ItemPredicate.Builder.item().of(p_125978_).build()); + } + + protected static Criterion hasItem(TagKey p_206407_) { + return paucalInventoryTrigger(ItemPredicate.Builder.item().of(p_206407_).build()); + } + + /** + * Prefixed with {@code paucal} to avoid collisions when Forge ATs {@link RecipeProvider#inventoryTrigger}. + */ + protected static Criterion paucalInventoryTrigger(ItemPredicate... $$0) { + return new Criterion<>( + CriteriaTriggers.INVENTORY_CHANGED, + new InventoryChangeTrigger.TriggerInstance(Optional.empty(), InventoryChangeTrigger.TriggerInstance.Slots.ANY, List.of($$0)) + ); + } + + // ================================= From PAUCAL 1.20 + + protected ShapedRecipeBuilder ring(RecipeCategory category, ItemLike out, int count, Ingredient outer, @Nullable Ingredient inner) { + return ringCornered(category, out, count, outer, outer, inner); + } + + protected ShapedRecipeBuilder ring(RecipeCategory category, ItemLike out, int count, ItemLike outer, @Nullable ItemLike inner) { + return ring(category, out, count, Ingredient.of(outer), ingredientOf(inner)); + } + + protected ShapedRecipeBuilder ring(RecipeCategory category, ItemLike out, int count, TagKey outer, @Nullable TagKey inner) { + return ring(category, out, count, Ingredient.of(outer), ingredientOf(inner)); + } + + protected ShapedRecipeBuilder ringCornerless(RecipeCategory category, ItemLike out, int count, Ingredient outer, + @Nullable Ingredient inner) { + return ringCornered(category, out, count, outer, null, inner); + } + + protected ShapedRecipeBuilder ringCornerless(RecipeCategory category, ItemLike out, int count, ItemLike outer, @Nullable ItemLike inner) { + return ringCornerless(category, out, count, Ingredient.of(outer), ingredientOf(inner)); + } + + protected ShapedRecipeBuilder ringAll(RecipeCategory category, ItemLike out, int count, Ingredient outer, @Nullable Ingredient inner) { + return ringCornered(category, out, count, outer, outer, inner); + } + + protected ShapedRecipeBuilder ringAll(RecipeCategory category, ItemLike out, int count, ItemLike outer, @Nullable ItemLike inner) { + return ringAll(category, out, count, Ingredient.of(outer), ingredientOf(inner)); + } + + protected ShapedRecipeBuilder ringCornered(RecipeCategory category, ItemLike out, int count, @Nullable Ingredient cardinal, + @Nullable Ingredient diagonal, @Nullable Ingredient inner) { + if (cardinal == null && diagonal == null && inner == null) { + throw new IllegalArgumentException("at least one ingredient must be non-null"); + } + if (inner != null && cardinal == null && diagonal == null) { + throw new IllegalArgumentException("if inner is non-null, either cardinal or diagonal must not be"); + } + + var builder = ShapedRecipeBuilder.shaped(category, out, count); + var C = ' '; + if (cardinal != null) { + builder.define('C', cardinal); + C = 'C'; + } + var D = ' '; + if (diagonal != null) { + builder.define('D', diagonal); + D = 'D'; + } + var I = ' '; + if (inner != null) { + builder.define('I', inner); + I = 'I'; + } + + builder + .pattern(String.format("%c%c%c", D, C, D)) + .pattern(String.format("%c%c%c", C, I, C)) + .pattern(String.format("%c%c%c", D, C, D)); + + return builder; + } + + protected ShapedRecipeBuilder stack(RecipeCategory category, ItemLike out, int count, Ingredient top, Ingredient bottom) { + return ShapedRecipeBuilder.shaped(category, out, count) + .define('T', top) + .define('B', bottom) + .pattern("T") + .pattern("B"); + } + + protected ShapedRecipeBuilder stack(RecipeCategory category, ItemLike out, int count, ItemLike top, ItemLike bottom) { + return stack(category, out, count, Ingredient.of(top), Ingredient.of(bottom)); + } + + protected ShapedRecipeBuilder stack(RecipeCategory category, ItemLike out, int count, TagKey top, TagKey bottom) { + return stack(category, out, count, Ingredient.of(top), Ingredient.of(bottom)); + } + + + protected ShapedRecipeBuilder stick(RecipeCategory category, ItemLike out, int count, Ingredient input) { + return stack(category, out, count, input, input); + } + + protected ShapedRecipeBuilder stick(RecipeCategory category, ItemLike out, int count, ItemLike input) { + return stick(category, out, count, Ingredient.of(input)); + } + + protected ShapedRecipeBuilder stick(RecipeCategory category, ItemLike out, int count, TagKey input) { + return stick(category, out, count, Ingredient.of(input)); + } + + /** + * @param largeSize True for a 3x3, false for a 2x2 + */ + protected void packing(RecipeCategory category, ItemLike free, ItemLike compressed, String freeName, boolean largeSize, RecipeOutput recipes) { + var pack = ShapedRecipeBuilder.shaped(category, compressed) + .define('X', free); + if (largeSize) { + pack.pattern("XXX").pattern("XXX").pattern("XXX"); + } else { + pack.pattern("XX").pattern("XX"); + } + pack.unlockedBy("has_item", hasItem(free)).save(recipes, modLoc(freeName + "_packing")); + + ShapelessRecipeBuilder.shapeless(category, free, largeSize ? 9 : 4) + .requires(compressed) + .unlockedBy("has_item", hasItem(free)).save(recipes, modLoc(freeName + "_unpacking")); + } + + @Nullable + protected Ingredient ingredientOf(@Nullable ItemLike item) { + return item == null ? null : Ingredient.of(item); + } + + @Nullable + protected Ingredient ingredientOf(@Nullable TagKey item) { + return item == null ? null : Ingredient.of(item); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java index 09465dfd03..8b243f229d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java @@ -1,24 +1,22 @@ package at.petrak.hexcasting.datagen.recipe.builders; -import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry; +import at.petrak.hexcasting.common.recipe.BrainsweepRecipe; import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; -import com.google.gson.JsonObject; import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementRequirements; import net.minecraft.advancements.AdvancementRewards; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.advancements.RequirementsStrategy; +import net.minecraft.advancements.Criterion; import net.minecraft.advancements.critereon.RecipeUnlockedTrigger; -import net.minecraft.data.recipes.FinishedRecipe; import net.minecraft.data.recipes.RecipeBuilder; +import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; -import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; -import java.util.function.Consumer; +import java.util.LinkedHashMap; +import java.util.Map; public class BrainsweepRecipeBuilder implements RecipeBuilder { private final StateIngredient blockIn; @@ -26,7 +24,7 @@ public class BrainsweepRecipeBuilder implements RecipeBuilder { private final long mediaCost; private final BlockState result; - private final Advancement.Builder advancement; + private final Map> criteria = new LinkedHashMap<>(); public BrainsweepRecipeBuilder(StateIngredient blockIn, BrainsweepeeIngredient entityIn, BlockState result, long mediaCost) { @@ -34,12 +32,11 @@ public BrainsweepRecipeBuilder(StateIngredient blockIn, BrainsweepeeIngredient e this.entityIn = entityIn; this.result = result; this.mediaCost = mediaCost; - this.advancement = Advancement.Builder.advancement(); } @Override - public RecipeBuilder unlockedBy(String pCriterionName, CriterionTriggerInstance pCriterionTrigger) { - this.advancement.addCriterion(pCriterionName, pCriterionTrigger); + public RecipeBuilder unlockedBy(String pCriterionName, Criterion pCriterionTrigger) { + criteria.put(pCriterionName, pCriterionTrigger); return this; } @@ -54,53 +51,14 @@ public Item getResult() { } @Override - public void save(Consumer pFinishedRecipeConsumer, ResourceLocation pRecipeId) { - if (this.advancement.getCriteria().isEmpty()) { - throw new IllegalStateException("No way of obtaining recipe " + pRecipeId); - } + public void save(RecipeOutput recipeOutput, ResourceLocation id) { + Advancement.Builder advancement = recipeOutput.advancement() + .addCriterion("has_the_recipe", RecipeUnlockedTrigger.unlocked(id)) + .rewards(AdvancementRewards.Builder.recipe(id)) + .requirements(AdvancementRequirements.Strategy.OR); + this.criteria.forEach(advancement::addCriterion); - this.advancement.parent(new ResourceLocation("recipes/root")) - .addCriterion("has_the_recipe", RecipeUnlockedTrigger.unlocked(pRecipeId)) - .rewards(AdvancementRewards.Builder.recipe(pRecipeId)) - .requirements(RequirementsStrategy.OR); - pFinishedRecipeConsumer.accept(new Result( - pRecipeId, - this.blockIn, this.entityIn, this.mediaCost, this.result, - this.advancement, - new ResourceLocation(pRecipeId.getNamespace(), "recipes/brainsweep/" + pRecipeId.getPath()))); - } - - public record Result(ResourceLocation id, StateIngredient blockIn, BrainsweepeeIngredient villagerIn, - long mediaCost, BlockState result, Advancement.Builder advancement, - ResourceLocation advancementId) implements FinishedRecipe { - @Override - public void serializeRecipeData(JsonObject json) { - json.add("blockIn", this.blockIn.serialize()); - json.add("entityIn", this.villagerIn.serialize()); - json.addProperty("cost", this.mediaCost); - json.add("result", StateIngredientHelper.serializeBlockState(this.result)); - } - - @Override - public ResourceLocation getId() { - return this.id; - } - - @Override - public RecipeSerializer getType() { - return HexRecipeStuffRegistry.BRAINSWEEP; - } - - @Nullable - @Override - public JsonObject serializeAdvancement() { - return this.advancement.serializeToJson(); - } - - @Nullable - @Override - public ResourceLocation getAdvancementId() { - return this.advancementId; - } + var recipe = new BrainsweepRecipe(blockIn, entityIn, mediaCost, result); + recipeOutput.accept(id.withPrefix("recipes/brainsweep/"), recipe, advancement.build(id.withPrefix("recipes/"))); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java index 77743d9a31..ed66b649cd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java @@ -2,9 +2,9 @@ import com.google.gson.JsonArray; import com.google.gson.JsonObject; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.data.recipes.FinishedRecipe; +import net.minecraft.advancements.Criterion; import net.minecraft.data.recipes.RecipeBuilder; +import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; @@ -31,7 +31,7 @@ public class CreateCrushingRecipeBuilder implements RecipeBuilder { private int processingTime = 100; @Override - public @NotNull CreateCrushingRecipeBuilder unlockedBy(@NotNull String name, @NotNull CriterionTriggerInstance trigger) { + public RecipeBuilder unlockedBy(String name, Criterion criterion) { return this; } @@ -76,7 +76,7 @@ public CreateCrushingRecipeBuilder withOutput(float chance, ItemLike output, int } public CreateCrushingRecipeBuilder withOutput(ItemStack output, float chance) { - this.results.add(new ItemProcessingOutput(output, chance)); + //this.results.add(new ItemProcessingOutput(output, chance)); return this; } @@ -93,7 +93,7 @@ public CreateCrushingRecipeBuilder withOutput(float chance, String name) { } public CreateCrushingRecipeBuilder withOutput(float chance, String name, int count) { - this.results.add(new CompatProcessingOutput(name, count, chance)); + //this.results.add(new CompatProcessingOutput(name, count, chance)); return this; } @@ -103,61 +103,7 @@ public CreateCrushingRecipeBuilder withOutput(float chance, String name, int cou } @Override - public void save(@NotNull Consumer consumer, @NotNull ResourceLocation resourceLocation) { - consumer.accept(new CrushingRecipe(resourceLocation)); - } - - public class CrushingRecipe implements FinishedRecipe { - - private final ResourceLocation id; - - public CrushingRecipe(ResourceLocation id) { - this.id = id; - } - - @Override - public void serializeRecipeData(@NotNull JsonObject json) { - json.addProperty("type", "create:crushing"); - - if (!group.isEmpty()) { - json.addProperty("group", group); - } - - JsonArray jsonIngredients = new JsonArray(); - JsonArray jsonOutputs = new JsonArray(); - - jsonIngredients.add(input.toJson()); + public void save(RecipeOutput recipeOutput, ResourceLocation id) { - results.forEach(o -> jsonOutputs.add(o.serialize())); - - json.add("ingredients", jsonIngredients); - json.add("results", jsonOutputs); - - int processingDuration = processingTime; - if (processingDuration > 0) { - json.addProperty("processingTime", processingDuration); - } - } - - @Override - public @NotNull ResourceLocation getId() { - return id; - } - - @Override - public @NotNull RecipeSerializer getType() { - return RecipeSerializer.SHAPELESS_RECIPE; // Irrelevant, we implement serialization ourselves - } - - @Override - public JsonObject serializeAdvancement() { - return null; - } - - @Override - public ResourceLocation getAdvancementId() { - return null; - } } - } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java index 8fbc4e7be1..a5daeb205e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java @@ -3,11 +3,12 @@ import com.google.common.collect.Lists; import com.google.gson.JsonArray; import com.google.gson.JsonObject; +import net.minecraft.advancements.Criterion; import net.minecraft.advancements.CriterionTriggerInstance; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.data.recipes.FinishedRecipe; import net.minecraft.data.recipes.RecipeBuilder; +import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.item.Item; @@ -30,7 +31,7 @@ public class FarmersDelightCuttingRecipeBuilder implements RecipeBuilder { private SoundEvent sound; @Override - public FarmersDelightCuttingRecipeBuilder unlockedBy(String s, CriterionTriggerInstance criterionTriggerInstance) { + public FarmersDelightCuttingRecipeBuilder unlockedBy(String s, Criterion criterionTriggerInstance) { return this; } @@ -75,7 +76,7 @@ public FarmersDelightCuttingRecipeBuilder withOutput(float chance, ItemLike outp } public FarmersDelightCuttingRecipeBuilder withOutput(ItemStack output, float chance) { - this.outputs.add(new ItemProcessingOutput(output, chance)); + //this.outputs.add(new ItemProcessingOutput(output, chance)); return this; } @@ -107,60 +108,7 @@ public FarmersDelightCuttingRecipeBuilder withSound(SoundEvent sound) { } @Override - public void save(Consumer consumer, ResourceLocation resourceLocation) { - consumer.accept(new CuttingRecipe(resourceLocation)); - } - - public class CuttingRecipe implements FinishedRecipe { - - private final ResourceLocation id; - - public CuttingRecipe(ResourceLocation id) { - this.id = id; - } - - @Override - public void serializeRecipeData(@NotNull JsonObject json) { - json.addProperty("type", "farmersdelight:cutting"); - - if (!group.isEmpty()) { - json.addProperty("group", group); - } - - JsonArray jsonIngredients = new JsonArray(); - JsonArray jsonOutputs = new JsonArray(); - - jsonIngredients.add(input.toJson()); - - outputs.forEach(o -> jsonOutputs.add(o.serialize())); - - json.add("ingredients", jsonIngredients); - json.add("tool", toolAction.serialize()); - json.add("result", jsonOutputs); - - if (sound != null) { - json.addProperty("sound", BuiltInRegistries.SOUND_EVENT.getKey(sound).toString()); - } - } - - @Override - public @NotNull ResourceLocation getId() { - return id; - } - - @Override - public @NotNull RecipeSerializer getType() { - return RecipeSerializer.SHAPELESS_RECIPE; // Irrelevant, we implement serialization ourselves - } - - @Override - public JsonObject serializeAdvancement() { - return null; - } + public void save(RecipeOutput recipeOutput, ResourceLocation id) { - @Override - public ResourceLocation getAdvancementId() { - return null; - } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/ItemProcessingOutput.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/ItemProcessingOutput.java deleted file mode 100644 index 245c3d607b..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/ItemProcessingOutput.java +++ /dev/null @@ -1,28 +0,0 @@ -package at.petrak.hexcasting.datagen.recipe.builders; - -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.ItemStack; - -public record ItemProcessingOutput(ItemStack stack, float chance) implements ProcessingOutput { - @Override - public JsonObject serialize() { - JsonObject json = new JsonObject(); - ResourceLocation resourceLocation = BuiltInRegistries.ITEM.getKey(stack.getItem()); - json.addProperty("item", resourceLocation.toString()); - int count = stack.getCount(); - if (count != 1) { - json.addProperty("count", count); - } - if (stack.hasTag()) { - json.add("nbt", JsonParser.parseString(stack.getTag().toString())); - } - if (chance != 1) { - json.addProperty("chance", chance); - } - return json; - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexActionTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexActionTagProvider.java index 4b083c5731..e3ef8bc1a1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexActionTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexActionTagProvider.java @@ -43,7 +43,7 @@ private static TagKey ersatzActionTag(TagKeycreateRegistryKey( - new ResourceLocation("foobar", "hexcasting/tags/action")); + ResourceLocation.fromNamespaceAndPath("foobar", "hexcasting/tags/action")); return TagKey.create(fakeKey, real.location()); } else { return real; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java index c354a0464e..dc1e2f4d9c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java @@ -1,13 +1,14 @@ package at.petrak.hexcasting.datagen.tag; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.xplat.IXplatTags; -import at.petrak.paucal.api.datagen.PaucalBlockTagProvider; import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.data.PackOutput; +import net.minecraft.data.tags.TagsProvider; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.BlockTags; import net.minecraft.tags.TagKey; @@ -16,12 +17,11 @@ import java.util.concurrent.CompletableFuture; -public class HexBlockTagProvider extends PaucalBlockTagProvider { +public class HexBlockTagProvider extends TagsProvider { public final IXplatTags xtags; - public HexBlockTagProvider(PackOutput output, CompletableFuture lookupProvider, - IXplatTags xtags) { - super(output, lookupProvider); + public HexBlockTagProvider(PackOutput output, CompletableFuture lookupProvider, IXplatTags xtags) { + super(output, Registries.BLOCK, lookupProvider, HexAPI.MOD_ID, null); this.xtags = xtags; } @@ -35,6 +35,9 @@ protected void addTags(HolderLookup.Provider provider) { .addTag(HexTags.Blocks.IMPETI) .addTag(HexTags.Blocks.DIRECTRICES); + tag(HexTags.Blocks.HEX_UNBREAKABLE) + .addTag(BlockTags.NEEDS_DIAMOND_TOOL); + add(tag(BlockTags.MINEABLE_WITH_PICKAXE), HexBlocks.SLATE_BLOCK, HexBlocks.SLATE_TILES, HexBlocks.SLATE_BRICKS, HexBlocks.SLATE_BRICKS_SMALL, HexBlocks.SLATE_PILLAR, HexBlocks.SLATE, @@ -134,11 +137,11 @@ protected void addTags(HolderLookup.Provider provider) { HexBlocks.CONJURED_BLOCK, HexBlocks.CONJURED_LIGHT); // this is a hack but fixes #532 - var createBrittle = TagKey.create(Registries.BLOCK, new ResourceLocation("create", "brittle")); + var createBrittle = TagKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath("create", "brittle")); tag(createBrittle).addOptionalTag(BuiltInRegistries.BLOCK.getKey(HexBlocks.SLATE)); } - void add(TagAppender appender, Block... blocks) { + void add(TagsProvider.TagAppender appender, Block... blocks) { for (Block block : blocks) { appender.add(BuiltInRegistries.BLOCK.getResourceKey(block).orElseThrow()); } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java index 520df8a48c..2a55206672 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java @@ -4,12 +4,13 @@ import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.xplat.IXplatTags; -import at.petrak.paucal.api.datagen.PaucalItemTagProvider; import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.DataGenerator; import net.minecraft.data.PackOutput; +import net.minecraft.data.tags.ItemTagsProvider; import net.minecraft.data.tags.TagsProvider; +import net.minecraft.data.tags.VanillaItemTagsProvider; import net.minecraft.tags.BlockTags; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.Item; @@ -18,16 +19,14 @@ import java.util.concurrent.CompletableFuture; -public class HexItemTagProvider extends PaucalItemTagProvider { +public class HexItemTagProvider extends ItemTagsProvider { private final IXplatTags xtags; - public HexItemTagProvider(PackOutput output, CompletableFuture lookup, TagsProvider pBlockTagsProvider, IXplatTags xtags) { - super(output, lookup, HexAPI.MOD_ID, pBlockTagsProvider); + public HexItemTagProvider(PackOutput output, CompletableFuture lookup, CompletableFuture> pBlockTagsProvider, IXplatTags xtags) { + super(output, lookup, pBlockTagsProvider, HexAPI.MOD_ID, null); this.xtags = xtags; } - - @Override protected void addTags(HolderLookup.Provider provider) { add(tag(xtags.gems()), diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternData.java b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternData.java index 5dc2dba2ff..f8d4f7c425 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternData.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternData.java @@ -9,6 +9,7 @@ import com.mojang.serialization.Codec; import com.samsthenerd.inline.api.InlineData; import net.minecraft.ChatFormatting; +import net.minecraft.core.component.DataComponents; import net.minecraft.network.chat.ClickEvent; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.HoverEvent; @@ -42,7 +43,7 @@ public ResourceLocation getRendererId(){ public Style getExtraStyle() { ItemStack scrollStack = new ItemStack(HexItems.SCROLL_MEDIUM); HexItems.SCROLL_MEDIUM.writeDatum(scrollStack, new PatternIota(pattern)); - scrollStack.setHoverName(getPatternName(pattern).copy().withStyle(ChatFormatting.WHITE)); + scrollStack.set(DataComponents.ITEM_NAME, getPatternName(pattern).copy().withStyle(ChatFormatting.WHITE)); HoverEvent he = new HoverEvent(HoverEvent.Action.SHOW_ITEM, new HoverEvent.ItemStackInfo(scrollStack)); ClickEvent ce = new ClickEvent(ClickEvent.Action.COPY_TO_CLIPBOARD, pattern.toString()); return Style.EMPTY.withHoverEvent(he).withClickEvent(ce); @@ -70,7 +71,7 @@ public Component asText(boolean withExtra) { } public static class InlinePatternDataType implements InlineDataType { - private static final ResourceLocation ID = new ResourceLocation(HexAPI.MOD_ID, "pattern"); + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, "pattern"); public static final InlinePatternDataType INSTANCE = new InlinePatternDataType(); @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/AbstractPatternComponent.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/AbstractPatternComponent.java index 997bb09411..531bb2a85e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/AbstractPatternComponent.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/AbstractPatternComponent.java @@ -6,6 +6,7 @@ import at.petrak.hexcasting.client.render.PatternSettings; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.core.HolderLookup; import vazkii.patchouli.api.IComponentRenderContext; import vazkii.patchouli.api.ICustomComponent; import vazkii.patchouli.api.IVariable; @@ -77,7 +78,7 @@ public void render(GuiGraphics graphics, IComponentRenderContext context, float } @Override - public void onVariablesAvailable(UnaryOperator lookup) { + public void onVariablesAvailable(UnaryOperator lookup, HolderLookup.RegistryLookup.Provider registries) { this.patterns = this.getPatterns(lookup); } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java index 576e82bb42..98ced2a109 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java @@ -26,13 +26,13 @@ public class BrainsweepProcessor implements IComponentProcessor { @Override public void setup(Level level, IVariableProvider vars) { - var id = new ResourceLocation(vars.get("recipe").asString()); + var id = ResourceLocation.parse(vars.get("recipe", level.registryAccess()).asString()); var recman = level.getRecipeManager(); var brainsweepings = recman.getAllRecipesFor(HexRecipeStuffRegistry.BRAINSWEEP_TYPE); for (var poisonApples : brainsweepings) { - if (poisonApples.getId().equals(id)) { - this.recipe = poisonApples; + if (poisonApples.id().equals(id)) { + this.recipe = poisonApples.value(); break; } } @@ -46,14 +46,14 @@ public IVariable process(Level level, String key) { switch (key) { case "header" -> { - return IVariable.from(this.recipe.result().getBlock().getName()); + return IVariable.from(this.recipe.result().getBlock().getName(), level.registryAccess()); } case "input" -> { var inputStacks = this.recipe.blockIn().getDisplayedStacks(); - return IVariable.from(inputStacks.toArray(new ItemStack[0])); + return IVariable.from(inputStacks.toArray(new ItemStack[0]), level.registryAccess()); } case "result" -> { - return IVariable.from(new ItemStack(this.recipe.result().getBlock())); + return IVariable.from(new ItemStack(this.recipe.result().getBlock()), level.registryAccess()); } case "entity" -> { @@ -79,8 +79,8 @@ public IVariable process(Level level, String key) { return IVariable.wrapList(this.recipe.entityIn() .getTooltip(mc.options.advancedItemTooltips) .stream() - .map(IVariable::from) - .toList()); + .map(v -> IVariable.from(v, level.registryAccess())) + .toList(), level.registryAccess()); } case "mediaCost" -> { record ItemCost(Item item, int cost) { @@ -98,14 +98,14 @@ public boolean dividesEvenly (int dividend) { List validItemStacks = Arrays.stream(costs) .filter(itemCost -> itemCost.dividesEvenly((int)this.recipe.mediaCost())) .map(validItemCost -> new ItemStack(validItemCost.item, (int) this.recipe.mediaCost() / validItemCost.cost)) - .map(IVariable::from) + .map(v -> IVariable.from(v, level.registryAccess())) .toList(); if (!validItemStacks.isEmpty()) { - return IVariable.wrapList(validItemStacks); + return IVariable.wrapList(validItemStacks, level.registryAccess()); } // fallback: display in terms of dust - return IVariable.from(new ItemStack(HexItems.AMETHYST_DUST, (int) (this.recipe.mediaCost() / MediaConstants.DUST_UNIT))); + return IVariable.from(new ItemStack(HexItems.AMETHYST_DUST, (int) (this.recipe.mediaCost() / MediaConstants.DUST_UNIT)), level.registryAccess()); } default -> { return null; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java index 13972ce372..4741f0c466 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java @@ -3,6 +3,7 @@ import com.google.gson.annotations.SerializedName; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.core.HolderLookup; import net.minecraft.network.chat.Component; import vazkii.patchouli.api.IComponentRenderContext; import vazkii.patchouli.api.ICustomComponent; @@ -19,6 +20,7 @@ public class CustomComponentTooltip implements ICustomComponent { IVariable tooltipReference; transient IVariable tooltipVar; + transient HolderLookup.Provider registries; transient List tooltip; transient int x, y; @@ -28,7 +30,7 @@ public void build(int componentX, int componentY, int pageNum) { x = componentX; y = componentY; tooltip = new ArrayList<>(); - for (IVariable s : tooltipVar.asListOrSingleton()) { + for (IVariable s : tooltipVar.asListOrSingleton(registries)) { tooltip.add(s.as(Component.class)); } } @@ -41,7 +43,7 @@ public void render(GuiGraphics graphics, IComponentRenderContext context, float } @Override - public void onVariablesAvailable(UnaryOperator lookup) { + public void onVariablesAvailable(UnaryOperator lookup, HolderLookup.Provider registries) { tooltipVar = lookup.apply(tooltipReference); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/LookupPatternComponent.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/LookupPatternComponent.java index 632c7abf79..9692f573dc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/LookupPatternComponent.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/LookupPatternComponent.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.google.gson.annotations.SerializedName; +import net.minecraft.core.HolderLookup; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import vazkii.patchouli.api.IVariable; @@ -37,10 +38,10 @@ public boolean showStrokeOrder() { } @Override - public void onVariablesAvailable(UnaryOperator lookup) { + public void onVariablesAvailable(UnaryOperator lookup, HolderLookup.Provider registries) { var opName = lookup.apply(IVariable.wrap(this.opNameRaw)).asString(); this.opName = ResourceLocation.tryParse(opName); - super.onVariablesAvailable(lookup); + super.onVariablesAvailable(lookup, registries); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/ManualPatternComponent.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/ManualPatternComponent.java index 06f77903ba..768bc855fd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/ManualPatternComponent.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/ManualPatternComponent.java @@ -5,6 +5,7 @@ import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.annotations.SerializedName; +import net.minecraft.core.HolderLookup; import vazkii.patchouli.api.IVariable; import java.util.ArrayList; @@ -21,11 +22,12 @@ public class ManualPatternComponent extends AbstractPatternComponent { public String strokeOrderRaw; protected transient boolean strokeOrder; + private transient HolderLookup.RegistryLookup.Provider registries; @Override public List getPatterns(UnaryOperator lookup) { this.strokeOrder = lookup.apply(IVariable.wrap(this.strokeOrderRaw)).asBoolean(true); - var patsRaw = lookup.apply(IVariable.wrap(patternsRaw)).asListOrSingleton(); + var patsRaw = lookup.apply(IVariable.wrap(patternsRaw)).asListOrSingleton(registries); var out = new ArrayList(); for (var ivar : patsRaw) { @@ -46,9 +48,10 @@ public boolean showStrokeOrder() { } @Override - public void onVariablesAvailable(UnaryOperator lookup) { + public void onVariablesAvailable(UnaryOperator lookup, HolderLookup.RegistryLookup.Provider registries) { this.strokeOrder = IVariable.wrap(this.strokeOrderRaw).asBoolean(true); + this.registries = registries; - super.onVariablesAvailable(lookup); + super.onVariablesAvailable(lookup, registries); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java index 055128b7a5..8311181fe6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java @@ -16,6 +16,8 @@ import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.item.crafting.ShapedRecipe; import net.minecraft.world.level.Level; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import vazkii.patchouli.api.IComponentProcessor; import vazkii.patchouli.api.IVariable; import vazkii.patchouli.api.IVariableProvider; @@ -32,10 +34,10 @@ public class MultiCraftingProcessor implements IComponentProcessor { @Override public void setup(Level level, IVariableProvider vars) { - List names = vars.get("recipes").asStream().map(IVariable::asString).collect(Collectors.toList()); + List names = vars.get("recipes", level.registryAccess()).asStream(level.registryAccess()).map(IVariable::asString).toList(); this.recipes = new ArrayList<>(); for (String name : names) { - CraftingRecipe recipe = PatchouliUtils.getRecipe(RecipeType.CRAFTING, new ResourceLocation(name)); + CraftingRecipe recipe = PatchouliUtils.getRecipe(RecipeType.CRAFTING, ResourceLocation.parse(name)); if (recipe != null) { recipes.add(recipe); if (shapeless) { @@ -55,13 +57,13 @@ public void setup(Level level, IVariableProvider vars) { } @Override - public IVariable process(Level level, String key) { + public @Nullable IVariable process(Level level, String key) { if (recipes.isEmpty()) { return null; } if (key.equals("heading")) { if (!hasCustomHeading) { - return IVariable.from(recipes.get(0).getResultItem(level.registryAccess()).getHoverName()); + return IVariable.from(recipes.getFirst().getResultItem(level.registryAccess()).getHoverName(), level.registryAccess()); } return null; } @@ -85,14 +87,17 @@ public IVariable process(Level level, String key) { ingredients.add(list.size() > index ? list.get(index) : Ingredient.EMPTY); } } - return PatchouliUtils.interweaveIngredients(ingredients, longestIngredientSize); + return PatchouliUtils.interweaveIngredients(ingredients, longestIngredientSize, level.registryAccess()); } if (key.equals("output")) { return IVariable.wrapList( - recipes.stream().map(recipe -> recipe.getResultItem(level.registryAccess())).map(IVariable::from).collect(Collectors.toList())); + recipes.stream() + .map(recipe -> recipe.getResultItem(level.registryAccess())) + .map(v -> IVariable.from(v, level.registryAccess())) + .collect(Collectors.toList()), level.registryAccess()); } if (key.equals("shapeless")) { - return IVariable.wrap(shapeless); + return IVariable.wrap(shapeless, level.registryAccess()); } return null; } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatchouliUtils.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatchouliUtils.java index 574b296e1b..e149dd62c9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatchouliUtils.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatchouliUtils.java @@ -1,12 +1,10 @@ package at.petrak.hexcasting.interop.patchouli; import net.minecraft.client.Minecraft; +import net.minecraft.core.HolderLookup; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.Recipe; -import net.minecraft.world.item.crafting.RecipeType; +import net.minecraft.world.item.crafting.*; import vazkii.patchouli.api.IVariable; import java.util.ArrayList; @@ -22,13 +20,15 @@ */ public class PatchouliUtils { @SuppressWarnings("unchecked") - public static , C extends Container> T getRecipe(RecipeType type, ResourceLocation id) { + public static , I extends RecipeInput> T getRecipe(RecipeType type, ResourceLocation id) { // PageDoubleRecipeRegistry if (Minecraft.getInstance().level == null) { return null; } else { var manager = Minecraft.getInstance().level.getRecipeManager(); + return (T) manager.byKey(id) + .map(RecipeHolder::value) .filter((recipe) -> recipe.getType() == type).orElse(null); } } @@ -42,10 +42,11 @@ public static , C extends Container> T getRecipe(RecipeType< * @param longestIngredientSize Longest ingredient in the entire recipe * @return Serialized Patchouli ingredient string */ - public static IVariable interweaveIngredients(List ingredients, int longestIngredientSize) { + public static IVariable interweaveIngredients(List ingredients, int longestIngredientSize, HolderLookup.RegistryLookup.Provider registries) { if (ingredients.size() == 1) { - return IVariable.wrapList(Arrays.stream(ingredients.get(0).getItems()).map(IVariable::from).collect( - Collectors.toList())); + return IVariable.wrapList(Arrays.stream(ingredients.get(0).getItems()) + .map(v -> IVariable.from(v, registries)) + .collect(Collectors.toList()), registries); } ItemStack[] empty = {ItemStack.EMPTY}; @@ -60,17 +61,18 @@ public static IVariable interweaveIngredients(List ingredients, int List list = new ArrayList<>(stacks.size() * longestIngredientSize); for (int i = 0; i < longestIngredientSize; i++) { for (ItemStack[] stack : stacks) { - list.add(IVariable.from(stack[i % stack.length])); + list.add(IVariable.from(stack[i % stack.length], registries)); } } - return IVariable.wrapList(list); + return IVariable.wrapList(list, registries); } /** * Overload of the method above that uses the provided list's longest ingredient size. */ - public static IVariable interweaveIngredients(List ingredients) { + public static IVariable interweaveIngredients(List ingredients, HolderLookup.RegistryLookup.Provider registries) { return interweaveIngredients(ingredients, - ingredients.stream().mapToInt(ingr -> ingr.getItems().length).max().orElse(1)); + ingredients.stream().mapToInt(ingr -> ingr.getItems().length).max().orElse(1), registries + ); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatternProcessor.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatternProcessor.java index 94e9e258b8..3c474040fc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatternProcessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/PatternProcessor.java @@ -12,9 +12,9 @@ public class PatternProcessor implements IComponentProcessor { @Override public void setup(Level level, IVariableProvider vars) { if (vars.has("header")) - translationKey = vars.get("header").asString(); + translationKey = vars.get("header", level.registryAccess()).asString(); else { - IVariable key = vars.get("op_id"); + IVariable key = vars.get("op_id", level.registryAccess()); String opName = key.asString(); String prefix = "hexcasting.action."; @@ -26,7 +26,7 @@ public void setup(Level level, IVariableProvider vars) { @Override public IVariable process(Level level, String key) { if (key.equals("translation_key")) { - return IVariable.wrap(translationKey); + return IVariable.wrap(translationKey, level.registryAccess()); } return null; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpGetScale.kt b/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpGetScale.kt index d1a9868c51..83f9e9de20 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpGetScale.kt +++ b/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpGetScale.kt @@ -11,7 +11,7 @@ object OpGetScale : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) env.assertEntityInRange(target) return IXplatAbstractions.INSTANCE.pehkuiApi.getScale(target).toDouble().asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpSetScale.kt b/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpSetScale.kt index 9c171c5784..80883870ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpSetScale.kt +++ b/Common/src/main/java/at/petrak/hexcasting/interop/pehkui/OpSetScale.kt @@ -17,7 +17,7 @@ object OpSetScale : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val target = args.getEntity(0, argc) + val target = args.getEntity(env.world, 0, argc) val scale = args.getDoubleBetween(1, 1.0 / 32.0, 8.0, argc) env.assertEntityInRange(target) diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java b/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java index 6ccfa837fc..f8172dc5b2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java +++ b/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java @@ -1,6 +1,9 @@ package at.petrak.hexcasting.mixin; +import at.petrak.hexcasting.common.lib.HexDataComponents; +import net.minecraft.util.Unit; import net.minecraft.world.entity.npc.WanderingTrader; +import net.minecraft.world.item.trading.ItemCost; import net.minecraft.world.item.trading.MerchantOffers; import net.minecraft.world.item.trading.MerchantOffer; import net.minecraft.world.item.ItemStack; @@ -30,8 +33,8 @@ private void addNewTrades(CallbackInfo ci) { if (rand.nextFloat() < HexConfig.server().traderScrollChance() && self.getServer() != null) { ItemStack scroll = new ItemStack(HexItems.SCROLL_LARGE); AddPerWorldPatternToScrollFunc.doStatic(scroll, rand, self.getServer().overworld()); - NBTHelper.putBoolean(scroll, ItemScroll.TAG_NEEDS_PURCHASE, true); - offerList.set(5, new MerchantOffer(new ItemStack(Items.EMERALD, 12), scroll, 1, 1, 1)); + scroll.set(HexDataComponents.NEEDS_PURCHASE, Unit.INSTANCE); + offerList.set(5, new MerchantOffer(new ItemCost(Items.EMERALD, 12), scroll, 1, 1, 1)); } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorDamageSource.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorDamageSource.java deleted file mode 100644 index bf64c438fc..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorDamageSource.java +++ /dev/null @@ -1,17 +0,0 @@ -package at.petrak.hexcasting.mixin.accessor; - -import net.minecraft.resources.ResourceKey; -import net.minecraft.world.damagesource.DamageSource; -import net.minecraft.world.damagesource.DamageSources; -import net.minecraft.world.damagesource.DamageType; -import net.minecraft.world.entity.Entity; -import org.jetbrains.annotations.Nullable; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -@Mixin(DamageSources.class) -public interface AccessorDamageSource { - @Invoker("source") - @Nullable - DamageSource hex$source(ResourceKey key, @Nullable Entity entity); -} diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorLootTable.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorLootTable.java index d2be3c734d..b5661c8e97 100644 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorLootTable.java +++ b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorLootTable.java @@ -8,16 +8,17 @@ import org.spongepowered.asm.mixin.Mutable; import org.spongepowered.asm.mixin.gen.Accessor; +import java.util.List; import java.util.function.BiFunction; @Mixin(LootTable.class) public interface AccessorLootTable { @Accessor("functions") - LootItemFunction[] hex$getFunctions(); + List hex$getFunctions(); @Accessor("functions") @Mutable - void hex$setFunctions(LootItemFunction[] lifs); + void hex$setFunctions(List lifs); @Accessor("compositeFunction") @Mutable diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorPotionBrewing.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorPotionBrewing.java deleted file mode 100644 index 88fe176a12..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/AccessorPotionBrewing.java +++ /dev/null @@ -1,14 +0,0 @@ -package at.petrak.hexcasting.mixin.accessor; - -import net.minecraft.world.item.Item; -import net.minecraft.world.item.alchemy.Potion; -import net.minecraft.world.item.alchemy.PotionBrewing; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -@Mixin(PotionBrewing.class) -public interface AccessorPotionBrewing { - @Invoker("addMix") - static void addMix(Potion p_43514_, Item p_43515_, Potion p_43516_) { - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java deleted file mode 100644 index 5aaf071208..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java +++ /dev/null @@ -1,14 +0,0 @@ -package at.petrak.hexcasting.mixin.accessor; - -import net.minecraft.advancements.CriteriaTriggers; -import net.minecraft.advancements.CriterionTrigger; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -@Mixin(CriteriaTriggers.class) -public interface CriteriaTriggersAccessor { - @Invoker("register") - static > T hex$register(T trigger) { - throw new UnsupportedOperationException(); - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/client/AccessorMouseHandler.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/client/AccessorMouseHandler.java index 54343bb81c..80e30a5dff 100644 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/client/AccessorMouseHandler.java +++ b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/client/AccessorMouseHandler.java @@ -6,9 +6,9 @@ @Mixin(MouseHandler.class) public interface AccessorMouseHandler { - @Accessor("accumulatedScroll") - double hex$getAccumulatedScroll(); + @Accessor("accumulatedScrollY") + double hex$getAccumulatedScrollY(); - @Accessor("accumulatedScroll") - void hex$setAccumulatedScroll(double scroll); + @Accessor("accumulatedScrollY") + void hex$setAccumulatedScrollY(double scroll); } diff --git a/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java b/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java index 2407d3571a..569e74d8d8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java +++ b/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java @@ -7,6 +7,7 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.datafixers.util.Pair; +import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -61,7 +62,7 @@ public Pair lookupReverse(ResourceKey { var inner = new CompoundTag(); @@ -72,7 +73,7 @@ public CompoundTag save(CompoundTag tag) { return tag; } - private static ScrungledPatternsSave load(CompoundTag tag) { + private static ScrungledPatternsSave load(CompoundTag tag, HolderLookup.Provider lookup) { var registryKey = IXplatAbstractions.INSTANCE.getActionRegistry().key(); var map = new HashMap(); @@ -83,7 +84,7 @@ private static ScrungledPatternsSave load(CompoundTag tag) { var rawKey = inner.getString(TAG_KEY); var dir = HexDir.values()[rawDir]; - var key = ResourceKey.create(registryKey, new ResourceLocation(rawKey)); + var key = ResourceKey.create(registryKey, ResourceLocation.parse(rawKey)); map.put(sig, new PerWorldEntry(key, dir)); } @@ -116,8 +117,10 @@ public static ScrungledPatternsSave createFromScratch(long seed) { public static ScrungledPatternsSave open(ServerLevel overworld) { return overworld.getDataStorage().computeIfAbsent( - ScrungledPatternsSave::load, - () -> ScrungledPatternsSave.createFromScratch(overworld.getSeed()), + new SavedData.Factory<>( + () -> ScrungledPatternsSave.createFromScratch(overworld.getSeed()), + ScrungledPatternsSave::load + ), TAG_SAVED_DATA); } diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java index 81806255b3..53ad1b5536 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java @@ -7,6 +7,7 @@ import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -19,7 +20,7 @@ import java.util.stream.Collectors; public interface IClientXplatAbstractions { - void sendPacketToServer(IMessage packet); + void sendPacketToServer(CustomPacketPayload packet); void setRenderLayer(Block block, RenderType type); diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 86dbc24586..d0bb2c0469 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -20,11 +20,16 @@ import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.common.msgs.IMessage; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientCommonPacketListener; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -65,14 +70,14 @@ public interface IXplatAbstractions { void initPlatformSpecific(); - void sendPacketToPlayer(ServerPlayer target, IMessage packet); + void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet); - void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, IMessage packet); + void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet); - void sendPacketTracking(Entity entity, IMessage packet); + void sendPacketTracking(Entity entity, CustomPacketPayload packet); // https://github.com/VazkiiMods/Botania/blob/13b7bcd9cbb6b1a418b0afe455662d29b46f1a7f/Xplat/src/main/java/vazkii/botania/xplat/IXplatAbstractions.java#L157 - Packet toVanillaClientboundPacket(IMessage message); + Packet toVanillaClientboundPacket(CustomPacketPayload message); // double getReachDistance(Player player); @@ -115,9 +120,6 @@ public interface IXplatAbstractions { @Nullable ADMediaHolder findMediaHolder(ItemStack stack); - @Nullable - ADMediaHolder findMediaHolder(ServerPlayer player); - @Nullable ADIotaHolder findDataHolder(ItemStack stack); @@ -180,6 +182,10 @@ BlockEntityType createBlockEntityType(BiFunction getEvalSoundRegistry(); + Registry> getStateIngredientRegistry(); + + Registry> getBrainsweepeeIngredientRegistry(); + GameProfile HEXCASTING = new GameProfile(UUID.fromString("8BE7E9DA-1667-11EE-BE56-0242AC120002"), "[HexCasting]"); boolean isBreakingAllowed(ServerLevel world, BlockPos pos, BlockState state, @Nullable Player player); diff --git a/Common/src/main/resources/architectury.common.json b/Common/src/main/resources/architectury.common.json new file mode 100644 index 0000000000..e4a0a01454 --- /dev/null +++ b/Common/src/main/resources/architectury.common.json @@ -0,0 +1,3 @@ +{ + "accessWidener": "hexplat.accesswidener" +} \ No newline at end of file diff --git a/Common/src/main/resources/hexplat.accesswidener b/Common/src/main/resources/hexplat.accesswidener index d8a1955d13..d60621d9cf 100644 --- a/Common/src/main/resources/hexplat.accesswidener +++ b/Common/src/main/resources/hexplat.accesswidener @@ -1,10 +1,10 @@ accessWidener v1 named -accessible class net/minecraft/client/renderer/RenderType$CompositeRenderType -accessible class net/minecraft/client/renderer/RenderType$CompositeState -accessible field net/minecraft/client/renderer/RenderType$CompositeState textureState Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; -accessible class net/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard -accessible class net/minecraft/world/item/crafting/Ingredient$Value -accessible method net/minecraft/world/item/crafting/Ingredient (Ljava/util/stream/Stream;)V -accessible method net/minecraft/world/item/context/UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V -accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; -accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; \ No newline at end of file +accessible class net/minecraft/client/renderer/RenderType$CompositeRenderType +accessible class net/minecraft/client/renderer/RenderType$CompositeState +accessible field net/minecraft/client/renderer/RenderType$CompositeState textureState Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; +accessible class net/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard +accessible class net/minecraft/world/item/crafting/Ingredient$Value +accessible method net/minecraft/world/item/crafting/Ingredient (Ljava/util/stream/Stream;)V +#accessible method net/minecraft/world/item/context/UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V +#accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; +#accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; \ No newline at end of file diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 0632756cb7..59a78e9373 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -68,24 +68,24 @@ dependencies { neoForge "net.neoforged:neoforge:${neoforgeVersion}" common(project(path: ':Common', configuration: 'namedElements')) { transitive false } shadowBundle(project(path: ':Common', configuration: 'transformProductionNeoForge')) { transitive false } - implementation "thedarkcolour:kotlinforforge:$kotlinForForgeVersion" + modImplementation "thedarkcolour:kotlinforforge:$kotlinForForgeVersion" // === MANDATORY DEPS === - implementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" - implementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" - implementation "top.theillusivec4.caelus:caelus-forge:$caelusVersion" -// implementation("com.samsthenerd.inline:inline-forge:$minecraftVersion-$inlineVersion") + modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" + modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" + modImplementation "top.theillusivec4.caelus:caelus-forge:$caelusVersion" + modImplementation "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" // needed for inline to run runtimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") // === OPTIONAL DEPS === - compileOnly "dev.emi:emi-neoforge:${emiVersion}:api" - runtimeOnly "dev.emi:emi-neoforge:${emiVersion}" + modCompileOnly "dev.emi:emi-neoforge:${emiVersion}:api" + modRuntimeOnly "dev.emi:emi-neoforge:${emiVersion}" modImplementation "io.wispforest:accessories-neoforge:$accessoriesVersion" - api("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") + modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") // "Required due to issues with JIJ dependency resolving in arch or something" // https://github.com/wisp-forest/accessories diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index 30e0e2a53e..ebfa19737b 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -23,11 +23,10 @@ import net.minecraft.client.renderer.entity.LivingEntityRenderer; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraftforge.client.event.*; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.neoforge.client.event.*; +import net.neoforged.neoforge.common.NeoForge; import java.io.IOException; import java.util.function.Function; @@ -48,37 +47,34 @@ public static void clientInit(FMLClientSetupEvent evt) { (colorizer, block) -> GLOBAL_BLOCK_COLORS.register(colorizer, block)); }); - var evBus = MinecraftForge.EVENT_BUS; + var evBus = NeoForge.EVENT_BUS; evBus.addListener((ClientPlayerNetworkEvent.LoggingIn e) -> PatternRegistryManifest.processRegistry(null)); + // TODO port: check if gametimedelta is the right one evBus.addListener((RenderLevelStageEvent e) -> { if (e.getStage().equals(RenderLevelStageEvent.Stage.AFTER_PARTICLES)) { - HexAdditionalRenderers.overlayLevel(e.getPoseStack(), e.getPartialTick()); + HexAdditionalRenderers.overlayLevel(e.getPoseStack(), e.getPartialTick().getGameTimeDeltaTicks()); } }); evBus.addListener((RenderGuiEvent.Post e) -> { - HexAdditionalRenderers.overlayGui(e.getGuiGraphics(), e.getPartialTick()); + HexAdditionalRenderers.overlayGui(e.getGuiGraphics(), e.getPartialTick().getGameTimeDeltaTicks()); }); - - evBus.addListener((TickEvent.RenderTickEvent e) -> { - if (e.phase == TickEvent.Phase.START) { - ClientTickCounter.renderTickStart(e.renderTickTime); - } + //TODO port: maybe replace with DeltaTracker from Mojang? + evBus.addListener((RenderFrameEvent.Pre e) -> { + ClientTickCounter.renderTickStart(e.getPartialTick().getGameTimeDeltaTicks()); }); - evBus.addListener((TickEvent.ClientTickEvent e) -> { - if (e.phase == TickEvent.Phase.END) { - ClientTickCounter.clientTickEnd(); - ShiftScrollListener.clientTickEnd(); - } + evBus.addListener((ClientTickEvent.Post e) -> { + ClientTickCounter.clientTickEnd(); + ShiftScrollListener.clientTickEnd(); }); evBus.addListener((InputEvent.MouseScrollingEvent e) -> { - var cancel = ShiftScrollListener.onScrollInGameplay(e.getScrollDelta()); + var cancel = ShiftScrollListener.onScrollInGameplay(e.getScrollDeltaY()); e.setCanceled(cancel); }); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java index 518a81a2e1..203f067aec 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java @@ -4,24 +4,23 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.Level; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraft.util.RandomSource; +import net.neoforged.neoforge.common.ModConfigSpec; import java.util.List; import static at.petrak.hexcasting.api.mod.HexConfig.noneMatch; public class ForgeHexConfig implements HexConfig.CommonConfigAccess { - private static ForgeConfigSpec.LongValue dustMediaAmount; - private static ForgeConfigSpec.LongValue shardMediaAmount; - private static ForgeConfigSpec.LongValue chargedCrystalMediaAmount; - private static ForgeConfigSpec.DoubleValue mediaToHealthRate; + private static ModConfigSpec.LongValue dustMediaAmount; + private static ModConfigSpec.LongValue shardMediaAmount; + private static ModConfigSpec.LongValue chargedCrystalMediaAmount; + private static ModConfigSpec.DoubleValue mediaToHealthRate; - private static ForgeConfigSpec.IntValue cypherCooldown; - private static ForgeConfigSpec.IntValue trinketCooldown; - private static ForgeConfigSpec.IntValue artifactCooldown; + private static ModConfigSpec.IntValue cypherCooldown; + private static ModConfigSpec.IntValue trinketCooldown; + private static ModConfigSpec.IntValue artifactCooldown; - public ForgeHexConfig(ForgeConfigSpec.Builder builder) { + public ForgeHexConfig(ModConfigSpec.Builder builder) { builder.push("Media Amounts"); dustMediaAmount = builder.comment("How much media a single Amethyst Dust item is worth") .defineInRange("dustMediaAmount", DEFAULT_DUST_MEDIA_AMOUNT, 0, Integer.MAX_VALUE); @@ -79,13 +78,13 @@ public int artifactCooldown() { } public static class Client implements HexConfig.ClientConfigAccess { - private static ForgeConfigSpec.BooleanValue ctrlTogglesOffStrokeOrder; - private static ForgeConfigSpec.BooleanValue invertSpellbookScrollDirection; - private static ForgeConfigSpec.BooleanValue invertAbacusScrollDirection; - private static ForgeConfigSpec.DoubleValue gridSnapThreshold; - private static ForgeConfigSpec.BooleanValue clickingTogglesDrawing; + private static ModConfigSpec.BooleanValue ctrlTogglesOffStrokeOrder; + private static ModConfigSpec.BooleanValue invertSpellbookScrollDirection; + private static ModConfigSpec.BooleanValue invertAbacusScrollDirection; + private static ModConfigSpec.DoubleValue gridSnapThreshold; + private static ModConfigSpec.BooleanValue clickingTogglesDrawing; - public Client(ForgeConfigSpec.Builder builder) { + public Client(ModConfigSpec.Builder builder) { ctrlTogglesOffStrokeOrder = builder.comment( "Whether the ctrl key will instead turn *off* the color gradient on patterns") .define("ctrlTogglesOffStrokeOrder", DEFAULT_CTRL_TOGGLES_OFF_STROKE_ORDER); @@ -132,24 +131,24 @@ public boolean clickingTogglesDrawing() { } public static class Server implements HexConfig.ServerConfigAccess { - private static ForgeConfigSpec.IntValue opBreakHarvestLevel; - private static ForgeConfigSpec.IntValue maxOpCount; - private static ForgeConfigSpec.IntValue maxSpellCircleLength; - private static ForgeConfigSpec.ConfigValue> actionDenyList; - private static ForgeConfigSpec.ConfigValue> circleActionDenyList; + private static ModConfigSpec.IntValue opBreakHarvestLevel; + private static ModConfigSpec.IntValue maxOpCount; + private static ModConfigSpec.IntValue maxSpellCircleLength; + private static ModConfigSpec.ConfigValue> actionDenyList; + private static ModConfigSpec.ConfigValue> circleActionDenyList; - private static ForgeConfigSpec.BooleanValue greaterTeleportSplatsItems; - private static ForgeConfigSpec.BooleanValue villagersOffendedByMindMurder; - private static ForgeConfigSpec.ConfigValue> tpDimDenyList; - private static ForgeConfigSpec.BooleanValue doesTrueNameHaveAmbit; - private static ForgeConfigSpec.DoubleValue traderScrollChance; + private static ModConfigSpec.BooleanValue greaterTeleportSplatsItems; + private static ModConfigSpec.BooleanValue villagersOffendedByMindMurder; + private static ModConfigSpec.ConfigValue> tpDimDenyList; + private static ModConfigSpec.BooleanValue doesTrueNameHaveAmbit; + private static ModConfigSpec.DoubleValue traderScrollChance; - private static ForgeConfigSpec.ConfigValue> fewScrollTables; - private static ForgeConfigSpec.ConfigValue> someScrollTables; - private static ForgeConfigSpec.ConfigValue> manyScrollTables; + private static ModConfigSpec.ConfigValue> fewScrollTables; + private static ModConfigSpec.ConfigValue> someScrollTables; + private static ModConfigSpec.ConfigValue> manyScrollTables; - public Server(ForgeConfigSpec.Builder builder) { + public Server(ModConfigSpec.Builder builder) { builder.push("Spells"); maxOpCount = builder.comment("The maximum number of actions that can be executed in one tick, to avoid " + "hanging the server.") @@ -243,7 +242,7 @@ public double traderScrollChance() { } private static boolean isValidReslocArg(Object o) { - return o instanceof String s && ResourceLocation.isValidResourceLocation(s); + return o instanceof String s && ResourceLocation.tryParse(s) != null; } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index 39bd896580..f598754ff5 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -18,6 +18,8 @@ import at.petrak.hexcasting.common.misc.PlayerPositionRecorder; import at.petrak.hexcasting.common.misc.RegisterMisc; import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.ForgeCapabilityHandler; import at.petrak.hexcasting.forge.cap.adimpl.CapClientCastingStack; @@ -25,6 +27,7 @@ import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.forge.interop.curios.CuriosRenderers; import at.petrak.hexcasting.forge.lib.ForgeHexArgumentTypeRegistry; +import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import at.petrak.hexcasting.forge.network.ForgePacketHandler; import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; @@ -32,6 +35,7 @@ import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import net.minecraft.core.Holder; import net.minecraft.core.MappedRegistry; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; @@ -47,69 +51,69 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.BlockSetType; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.common.ToolActions; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.event.BuildCreativeModeTabContentsEvent; -import net.minecraftforge.event.RegisterCommandsEvent; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.event.entity.EntityAttributeModificationEvent; -import net.minecraftforge.event.entity.living.LivingConversionEvent; -import net.minecraftforge.event.entity.living.LivingEvent; -import net.minecraftforge.event.entity.player.PlayerEvent; -import net.minecraftforge.event.entity.player.PlayerInteractEvent; -import net.minecraftforge.event.level.BlockEvent; -import net.minecraftforge.event.server.ServerStartedEvent; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.fml.DistExecutor; -import net.minecraftforge.fml.ModList; -import net.minecraftforge.fml.ModLoadingContext; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.config.ModConfig; -import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; -import net.minecraftforge.network.PacketDistributor; -import net.minecraftforge.registries.RegisterEvent; -import thedarkcolour.kotlinforforge.KotlinModLoadingContext; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.ModList; +import net.neoforged.fml.ModLoadingContext; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.config.ModConfig; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.fml.loading.FMLEnvironment; +import net.neoforged.neoforge.common.ItemAbilities; +import net.neoforged.neoforge.common.ModConfigSpec; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.BuildCreativeModeTabContentsEvent; +import net.neoforged.neoforge.event.RegisterCommandsEvent; +import net.neoforged.neoforge.event.brewing.RegisterBrewingRecipesEvent; +import net.neoforged.neoforge.event.entity.EntityAttributeModificationEvent; +import net.neoforged.neoforge.event.entity.living.LivingConversionEvent; +import net.neoforged.neoforge.event.entity.player.PlayerEvent; +import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent; +import net.neoforged.neoforge.event.level.BlockEvent; +import net.neoforged.neoforge.event.server.ServerStartedEvent; +import net.neoforged.neoforge.event.tick.EntityTickEvent; +import net.neoforged.neoforge.event.tick.LevelTickEvent; +import net.neoforged.neoforge.network.PacketDistributor; +import net.neoforged.neoforge.registries.NewRegistryEvent; +import net.neoforged.neoforge.registries.RegisterEvent; +import thedarkcolour.kotlinforforge.neoforge.KotlinModLoadingContext; import java.util.function.BiConsumer; import java.util.function.Consumer; @Mod(HexAPI.MOD_ID) public class ForgeHexInitializer { - public ForgeHexInitializer() { - initConfig(); + public ForgeHexInitializer(ModContainer modContainer) { + initConfig(modContainer); initRegistries(); initRegistry(); initListeners(); } - private static void initConfig() { - var config = new ForgeConfigSpec.Builder().configure(ForgeHexConfig::new); - var clientConfig = new ForgeConfigSpec.Builder().configure(ForgeHexConfig.Client::new); - var serverConfig = new ForgeConfigSpec.Builder().configure(ForgeHexConfig.Server::new); + private static void initConfig(ModContainer modContainer) { + var config = new ModConfigSpec.Builder().configure(ForgeHexConfig::new); + var clientConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Client::new); + var serverConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Server::new); HexConfig.setCommon(config.getLeft()); HexConfig.setClient(clientConfig.getLeft()); HexConfig.setServer(serverConfig.getLeft()); - var mlc = ModLoadingContext.get(); - mlc.registerConfig(ModConfig.Type.COMMON, config.getRight()); - mlc.registerConfig(ModConfig.Type.CLIENT, clientConfig.getRight()); - mlc.registerConfig(ModConfig.Type.SERVER, serverConfig.getRight()); + modContainer.registerConfig(ModConfig.Type.COMMON, config.getRight()); + modContainer.registerConfig(ModConfig.Type.CLIENT, clientConfig.getRight()); + modContainer.registerConfig(ModConfig.Type.SERVER, serverConfig.getRight()); } public static void initRegistries() { - if (!(BuiltInRegistries.REGISTRY instanceof MappedRegistry rootRegistry)) return; - rootRegistry.unfreeze(); - - IXplatAbstractions.INSTANCE.getActionRegistry(); - IXplatAbstractions.INSTANCE.getSpecialHandlerRegistry(); - IXplatAbstractions.INSTANCE.getIotaTypeRegistry(); - IXplatAbstractions.INSTANCE.getArithmeticRegistry(); - IXplatAbstractions.INSTANCE.getContinuationTypeRegistry(); - IXplatAbstractions.INSTANCE.getEvalSoundRegistry(); - - rootRegistry.freeze(); + getModEventBus().addListener(NewRegistryEvent.class, ev -> { + ev.register(IXplatAbstractions.INSTANCE.getActionRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getSpecialHandlerRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getIotaTypeRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getArithmeticRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getContinuationTypeRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getEvalSoundRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getStateIngredientRegistry()); + ev.register(IXplatAbstractions.INSTANCE.getBrainsweepeeIngredientRegistry()); + }); } private static void initRegistry() { @@ -123,6 +127,7 @@ private static void initRegistry() { bind(Registries.ITEM, HexBlocks::registerBlockItems); bind(Registries.BLOCK_ENTITY_TYPE, HexBlockEntities::registerTiles); bind(Registries.ITEM, HexItems::registerItems); + bind(Registries.DATA_COMPONENT_TYPE, HexDataComponents::registerDataComponents); bind(Registries.RECIPE_SERIALIZER, HexRecipeStuffRegistry::registerSerializers); bind(Registries.RECIPE_TYPE, HexRecipeStuffRegistry::registerTypes); @@ -130,44 +135,51 @@ private static void initRegistry() { bind(Registries.ENTITY_TYPE, HexEntities::registerEntities); bind(Registries.ATTRIBUTE, HexAttributes::register); bind(Registries.MOB_EFFECT, HexMobEffects::register); - bind(Registries.POTION, HexPotions::register); - bind(Registries.PARTICLE_TYPE, HexParticles::registerParticles); + bind(Registries.TRIGGER_TYPE, HexAdvancementTriggers::registerTriggers); + bind(HexRegistries.IOTA_TYPE, HexIotaTypes::registerTypes); bind(HexRegistries.ACTION, HexActions::register); bind(HexRegistries.SPECIAL_HANDLER, HexSpecialHandlers::register); bind(HexRegistries.ARITHMETIC, HexArithmetics::register); bind(HexRegistries.CONTINUATION_TYPE, HexContinuationTypes::registerContinuations); bind(HexRegistries.EVAL_SOUND, HexEvalSounds::register); + bind(HexRegistries.STATE_INGREDIENT, StateIngredients::register); + bind(HexRegistries.BRAINSWEEPEE_INGREDIENT, BrainsweepeeIngredients::register); ForgeHexArgumentTypeRegistry.ARGUMENT_TYPES.register(getModEventBus()); ForgeHexLootMods.REGISTRY.register(getModEventBus()); - - HexAdvancementTriggers.registerTriggers(); + ForgeHexIngredientTypes.INGREDIENT_TYPES.register(getModEventBus()); RegisterMisc.register(); } // https://github.com/VazkiiMods/Botania/blob/1.18.x/Forge/src/main/java/vazkii/botania/forge/ForgeCommonInitializer.java - private static void bind(ResourceKey> registry, - Consumer> source) { + private static void bind(ResourceKey> registry, Consumer> source) { getModEventBus().addListener((RegisterEvent event) -> { if (registry.equals(event.getRegistryKey())) { - source.accept((t, rl) -> event.register(registry, rl, () -> t)); + source.accept((t, rl) -> { + if(t == null) + System.out.println("OBJ " + rl + " is null! (" + registry + ")"); + + event.register(registry, rl, () -> t); + }); } }); } private static void initListeners() { var modBus = getModEventBus(); - var evBus = MinecraftForge.EVENT_BUS; + var evBus = NeoForge.EVENT_BUS; + + if(FMLEnvironment.dist == Dist.CLIENT) + modBus.register(ForgeHexClientInitializer.class); - DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> modBus.register(ForgeHexClientInitializer.class)); + ForgePacketHandler.init(modBus); modBus.addListener((FMLCommonSetupEvent evt) -> evt.enqueueWork(() -> { - ForgePacketHandler.init(); HexComposting.setup(); HexStrippables.init(); // Forge does not strictly require TreeGrowers to initialize during early game stages, unlike Fabric @@ -190,9 +202,6 @@ private static void initListeners() { // We have to do these at some point when the registries are still open modBus.addListener((RegisterEvent evt) -> { if (evt.getRegistryKey().equals(Registries.ITEM)) { - CraftingHelper.register(ForgeUnsealedIngredient.ID, ForgeUnsealedIngredient.Serializer.INSTANCE); - CraftingHelper.register(ForgeModConditionalIngredient.ID, - ForgeModConditionalIngredient.Serializer.INSTANCE); HexStatistics.register(); HexLootFunctions.registerSerializers((lift, id) -> Registry.register(BuiltInRegistries.LOOT_FUNCTION_TYPE, id, lift)); @@ -212,15 +221,15 @@ private static void initListeners() { evBus.addListener((LivingConversionEvent.Post evt) -> BrainsweepingEvents.copyBrainsweepPostTransformation(evt.getEntity(), evt.getOutcome())); - evBus.addListener((LivingEvent.LivingTickEvent evt) -> { + evBus.addListener((EntityTickEvent.Post evt) -> { if (evt.getEntity() instanceof ServerPlayer splayer) { OpFlight.tickDownFlight(splayer); OpAltiora.checkPlayerCollision(splayer); } }); - evBus.addListener((TickEvent.LevelTickEvent evt) -> { - if (evt.phase == TickEvent.Phase.END && evt.level instanceof ServerLevel world) { + evBus.addListener((LevelTickEvent.Post evt) -> { + if (evt.getLevel() instanceof ServerLevel world) { PlayerPositionRecorder.updateAllPlayers(world); } }); @@ -248,14 +257,13 @@ private static void initListeners() { Entity target = evt.getTarget(); if (evt.getTarget() instanceof ServerPlayer serverPlayer && target instanceof Mob mob && IXplatAbstractions.INSTANCE.isBrainswept(mob)) { - ForgePacketHandler.getNetwork() - .send(PacketDistributor.PLAYER.with(() -> serverPlayer), MsgBrainsweepAck.of(mob)); + PacketDistributor.sendToPlayer(serverPlayer, MsgBrainsweepAck.of(mob)); } }); // Implemented with a mixin on Farbc evBus.addListener((BlockEvent.BlockToolModificationEvent evt) -> { - if (!evt.isSimulated() && evt.getToolAction() == ToolActions.AXE_STRIP) { + if (!evt.isSimulated() && evt.getItemAbility() == ItemAbilities.AXE_STRIP) { BlockState bs = evt.getState(); var output = HexStrippables.STRIPPABLES.get(bs.getBlock()); if (output != null) { @@ -264,30 +272,29 @@ private static void initListeners() { } }); + evBus.addListener(RegisterBrewingRecipesEvent.class, ev -> { + HexPotions.addRecipes(ev.getBuilder(), ev.getRegistryAccess()); + }); + // Caps are cardinal components on farbc modBus.addListener(ForgeCapabilityHandler::registerCaps); - evBus.addGenericListener(ItemStack.class, ForgeCapabilityHandler::attachItemCaps); - evBus.addGenericListener(BlockEntity.class, ForgeCapabilityHandler::attachBlockEntityCaps); - evBus.addGenericListener(Entity.class, ForgeCapabilityHandler::attachEntityCaps); modBus.register(ForgeHexDataGenerators.class); - modBus.register(ForgeCapabilityHandler.class); evBus.register(CapSyncers.class); modBus.addListener((EntityAttributeModificationEvent e) -> { - e.add(EntityType.PLAYER, HexAttributes.GRID_ZOOM); - e.add(EntityType.PLAYER, HexAttributes.SCRY_SIGHT); - e.add(EntityType.PLAYER, HexAttributes.FEEBLE_MIND); - e.add(EntityType.PLAYER, HexAttributes.MEDIA_CONSUMPTION_MODIFIER); - e.add(EntityType.PLAYER, HexAttributes.AMBIT_RADIUS); - e.add(EntityType.PLAYER, HexAttributes.SENTINEL_RADIUS); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.GRID_ZOOM)); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.SCRY_SIGHT)); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.FEEBLE_MIND)); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.MEDIA_CONSUMPTION_MODIFIER)); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.AMBIT_RADIUS)); + e.add(EntityType.PLAYER, Holder.direct(HexAttributes.SENTINEL_RADIUS)); }); if (ModList.get().isLoaded(HexInterop.Forge.CURIOS_API_ID)) { - modBus.addListener(CuriosApiInterop::onInterModEnqueue); modBus.addListener(CuriosApiInterop::onClientSetup); - DistExecutor.unsafeRunWhenOn(Dist.CLIENT, - () -> () -> modBus.addListener(CuriosRenderers::onLayerRegister)); + if(FMLEnvironment.dist == Dist.CLIENT) + modBus.addListener(CuriosRenderers::onLayerRegister); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/CapSyncers.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/CapSyncers.java index 89e26d4474..a5a3952072 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/CapSyncers.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/CapSyncers.java @@ -6,8 +6,8 @@ import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; -import net.minecraftforge.event.entity.player.PlayerEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.neoforge.event.entity.player.PlayerEvent; public class CapSyncers { @SubscribeEvent diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java index 502357ab3a..d29734c196 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java @@ -1,13 +1,14 @@ package at.petrak.hexcasting.forge.cap; -import at.petrak.hexcasting.api.addldata.*; -import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; +import at.petrak.hexcasting.api.addldata.ADMediaHolder; +import at.petrak.hexcasting.api.addldata.ItemDelegatingEntityIotaHolder; +import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; import at.petrak.hexcasting.api.casting.iota.DoubleIota; import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.api.item.*; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexConfig; -import at.petrak.hexcasting.common.entities.EntityWallScroll; +import at.petrak.hexcasting.common.entities.HexEntities; import at.petrak.hexcasting.common.items.HexBaubleItem; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; @@ -15,202 +16,100 @@ import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.core.Direction; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.decoration.ItemFrame; -import net.minecraft.world.entity.item.ItemEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ItemStack; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.common.capabilities.RegisterCapabilitiesEvent; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.common.util.NonNullSupplier; -import net.minecraftforge.event.AttachCapabilitiesEvent; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.function.BooleanSupplier; -import java.util.function.Function; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.neoforged.neoforge.capabilities.Capabilities; +import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgeCapabilityHandler { - /** - * Items that store an iota to their tag. - */ - public static final ResourceLocation IOTA_STORAGE_CAP = modLoc("iota_holder"); - /** - * Items that intrinsically store an iota. - */ - public static final ResourceLocation IOTA_STATIC_CAP = modLoc("iota_item"); - /** - * Items that store a variable amount of media to their tag. - */ - public static final ResourceLocation MEDIA_STORAGE_CAP = modLoc("media_holder"); - /** - * Items that statically provide media. - */ - public static final ResourceLocation MEDIA_STATIC_CAP = modLoc("media_item"); - /** - * Items that store a packaged Hex. - */ - public static final ResourceLocation HEX_HOLDER_CAP = modLoc("hex_item"); - /** - * Items that have multiple visual variants. - */ - public static final ResourceLocation VARIANT_ITEM_CAP = modLoc("variant_item"); - /** - * Items that work as pigments. - */ - public static final ResourceLocation PIGMENT_CAP = modLoc("pigment"); - public static final ResourceLocation CURIO_CAP = modLoc("curio"); - - public static final ResourceLocation IMPETUS_HANDLER = modLoc("impetus_items"); - - /** - * Used to render the pattern spiral around players while casting. - */ - public static final ResourceLocation PATTERN_SPIRAL = modLoc("pattern_spiral"); public static void registerCaps(RegisterCapabilitiesEvent evt) { - evt.register(ADMediaHolder.class); - evt.register(ADIotaHolder.class); - evt.register(ADHexHolder.class); - evt.register(ADPigment.class); - } - - public static void attachItemCaps(AttachCapabilitiesEvent evt) { - ItemStack stack = evt.getObject(); - - if (stack.getItem() instanceof MediaHolderItem holder) { - evt.addCapability(MEDIA_STORAGE_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapItemMediaHolder(holder, stack))); - } else if (stack.is(HexItems.AMETHYST_DUST)) { - evt.addCapability(MEDIA_STATIC_CAP, provide(stack, HexCapabilities.MEDIA, () -> - new CapStaticMediaHolder(HexConfig.common()::dustMediaAmount, ADMediaHolder.AMETHYST_DUST_PRIORITY, - stack))); - } else if (stack.is(Items.AMETHYST_SHARD)) { - evt.addCapability(MEDIA_STATIC_CAP, provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - HexConfig.common()::shardMediaAmount, ADMediaHolder.AMETHYST_SHARD_PRIORITY, stack))); - } else if (stack.is(HexItems.CHARGED_AMETHYST)) { - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - HexConfig.common()::chargedCrystalMediaAmount, ADMediaHolder.CHARGED_AMETHYST_PRIORITY, stack))); - } else if (stack.is(HexItems.QUENCHED_SHARD)) { - // no one uses the config - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - () -> MediaConstants.QUENCHED_SHARD_UNIT, ADMediaHolder.QUENCHED_SHARD_PRIORITY, stack))); - } else if (stack.is(HexBlocks.QUENCHED_ALLAY.asItem())) { - // no one uses the config - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - () -> MediaConstants.QUENCHED_BLOCK_UNIT, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, stack))); - } - - if (stack.getItem() instanceof IotaHolderItem holder) { - evt.addCapability(IOTA_STORAGE_CAP, - provide(stack, HexCapabilities.IOTA, () -> new CapItemIotaHolder(holder, stack))); - } else if (stack.is(Items.PUMPKIN_PIE)) { - // haha yes - evt.addCapability(IOTA_STATIC_CAP, provide(stack, HexCapabilities.IOTA, () -> - new CapStaticIotaHolder((s) -> new DoubleIota(Math.PI * s.getCount()), stack))); - } - - if (stack.getItem() instanceof HexHolderItem holder) { - evt.addCapability(HEX_HOLDER_CAP, - provide(stack, HexCapabilities.STORED_HEX, () -> new CapItemHexHolder(holder, stack))); + for(Item item : BuiltInRegistries.ITEM) { + if(item instanceof MediaHolderItem holder) + evt.registerItem(HexCapabilities.Item.MEDIA, (stack, ctx) -> new CapItemMediaHolder(holder, stack), item); + if(item instanceof IotaHolderItem holder) + evt.registerItem(HexCapabilities.Item.IOTA, (stack, ctx) -> new CapItemIotaHolder(holder, stack), item); + if(item instanceof HexHolderItem holder) + evt.registerItem(HexCapabilities.Item.STORED_HEX, (stack, ctx) -> new CapItemHexHolder(holder, stack), item); + if(item instanceof VariantItem holder) + evt.registerItem(HexCapabilities.Item.VARIANT_ITEM, (stack, ctx) -> new CapItemVariantItem(holder, stack), item); + if(item instanceof PigmentItem holder) + evt.registerItem(HexCapabilities.Item.COLOR, (stack, ctx) -> new CapItemPigment(holder, stack), item); + if(item instanceof HexBaubleItem && IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Forge.CURIOS_API_ID)) + CuriosApiInterop.registerCap(evt, item); } - if (stack.getItem() instanceof VariantItem variantItem) { - evt.addCapability(VARIANT_ITEM_CAP, - provide(stack, HexCapabilities.VARIANT_ITEM, () -> new CapItemVariantItem(variantItem, stack))); - } - - if (stack.getItem() instanceof PigmentItem pigment) { - evt.addCapability(PIGMENT_CAP, - provide(stack, HexCapabilities.COLOR, () -> new CapItemPigment(pigment, stack))); - } - - if (IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Forge.CURIOS_API_ID) - && stack.getItem() instanceof HexBaubleItem) { - evt.addCapability(CURIO_CAP, CuriosApiInterop.curioCap(stack)); - } - } - - public static void attachEntityCaps(AttachCapabilitiesEvent evt) { - var entity = evt.getObject(); - if (entity instanceof ItemEntity item) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(item, - ItemDelegatingEntityIotaHolder.ToItemEntity::new)); - } else if (entity instanceof ItemFrame frame) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(frame, - ItemDelegatingEntityIotaHolder.ToItemFrame::new)); - } else if (entity instanceof EntityWallScroll scroll) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(scroll, - ItemDelegatingEntityIotaHolder.ToWallScroll::new)); - } else if (entity instanceof Player player) { - evt.addCapability(PATTERN_SPIRAL, provide(player, HexCapabilities.CLIENT_CASTING_STACK, - () -> new CapClientCastingStack(player, new ClientCastingStack()))); - } - } - public static void attachBlockEntityCaps(AttachCapabilitiesEvent evt) { - if (evt.getObject() instanceof BlockEntityAbstractImpetus impetus) { - evt.addCapability(IMPETUS_HANDLER, provide(impetus, ForgeCapabilities.ITEM_HANDLER, - () -> new ForgeImpetusCapability(impetus))); - } - } - - // i do not know why we need super here - private static SimpleProvider wrapItemEntityDelegate(E entity, - Function make) { - return provide(entity, HexCapabilities.IOTA, - () -> new CapEntityIotaHolder.Wrapper(make.apply(entity))); - } - - private static SimpleProvider provide(Entity entity, Capability capability, - NonNullSupplier supplier) { - return provide(entity::isRemoved, capability, supplier); - } - - private static SimpleProvider provide(BlockEntity be, Capability capability, - NonNullSupplier supplier) { - return provide(be::isRemoved, capability, supplier); - } - - public static SimpleProvider provide(ItemStack stack, Capability capability, - NonNullSupplier supplier) { - return provide(stack::isEmpty, capability, supplier); - } - - private static SimpleProvider provide(BooleanSupplier invalidated, Capability capability, - NonNullSupplier supplier) { - return new SimpleProvider<>(invalidated, capability, LazyOptional.of(supplier)); - } - - public static ICapabilityProvider makeProvider(Capability cap, U instance) { - LazyOptional lazyInstanceButNotReally = LazyOptional.of(() -> instance); - return new SimpleProvider<>(() -> false, cap, lazyInstanceButNotReally); - } - - public record SimpleProvider(BooleanSupplier invalidated, - Capability capability, - LazyOptional instance) implements ICapabilityProvider { - - @NotNull - @Override - public LazyOptional getCapability(@NotNull Capability cap, @Nullable Direction side) { - if (invalidated.getAsBoolean()) { - return LazyOptional.empty(); + // TODO port: amethyst is static, holders aren't. Modifiable media amount. UPD: I don't remember why I left that comment + evt.registerItem( + HexCapabilities.Item.MEDIA, + (stack, ctx) -> new CapStaticMediaHolder(HexConfig.common()::dustMediaAmount, ADMediaHolder.AMETHYST_DUST_PRIORITY, stack), + HexItems.AMETHYST_DUST + ); + evt.registerItem( + HexCapabilities.Item.MEDIA, + (stack, ctx) -> new CapStaticMediaHolder(HexConfig.common()::shardMediaAmount, ADMediaHolder.AMETHYST_SHARD_PRIORITY, stack), + Items.AMETHYST_SHARD + ); + evt.registerItem( + HexCapabilities.Item.MEDIA, + (stack, ctx) -> new CapStaticMediaHolder(HexConfig.common()::chargedCrystalMediaAmount, ADMediaHolder.CHARGED_AMETHYST_PRIORITY, stack), + HexItems.CHARGED_AMETHYST + ); + evt.registerItem( + HexCapabilities.Item.MEDIA, + (stack, ctx) -> new CapStaticMediaHolder(() -> MediaConstants.QUENCHED_SHARD_UNIT, ADMediaHolder.QUENCHED_SHARD_PRIORITY, stack), + HexItems.QUENCHED_SHARD + ); + evt.registerItem( + HexCapabilities.Item.MEDIA, + (stack, ctx) -> new CapStaticMediaHolder(() -> MediaConstants.QUENCHED_BLOCK_UNIT, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, stack), + HexBlocks.QUENCHED_ALLAY.asItem() + ); + + // haha yes + evt.registerItem( + HexCapabilities.Item.IOTA, + (stack, ctx) -> new CapStaticIotaHolder((s) -> new DoubleIota(Math.PI * s.getCount()), stack), + Items.PUMPKIN_PIE + ); + + evt.registerEntity( + HexCapabilities.Entity.IOTA, + EntityType.ITEM, + (ent, ctx) -> new ItemDelegatingEntityIotaHolder.ToItemEntity(ent) + ); + evt.registerEntity( + HexCapabilities.Entity.IOTA, + EntityType.ITEM_FRAME, + (ent, ctx) -> new ItemDelegatingEntityIotaHolder.ToItemFrame(ent) + ); + evt.registerEntity( + HexCapabilities.Entity.IOTA, + HexEntities.WALL_SCROLL, + (ent, ctx) -> new ItemDelegatingEntityIotaHolder.ToWallScroll(ent) + ); + evt.registerEntity( + HexCapabilities.Entity.CLIENT_CASTING_STACK, + EntityType.PLAYER, + (player, ctx) -> new CapClientCastingStack(player, new ClientCastingStack()) + ); + + // TODO port: maybe use tag or impetus registry + for(Block block : BuiltInRegistries.BLOCK) { + if(block instanceof BlockAbstractImpetus imBlock) { + evt.registerBlockEntity( + Capabilities.ItemHandler.BLOCK, + imBlock.getBlockEntityType(), + (be, dir) -> new ForgeImpetusCapability(be) + ); } - - return cap == capability ? instance.cast() : LazyOptional.empty(); } } - } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java index 9da53fa9a5..45d22e2eb8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java @@ -2,7 +2,7 @@ import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; import org.jetbrains.annotations.NotNull; public record ForgeImpetusCapability(BlockEntityAbstractImpetus impetus) implements IItemHandler { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java index 9db3e48d0a..89121c0f8d 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java @@ -2,24 +2,29 @@ import at.petrak.hexcasting.api.addldata.*; import at.petrak.hexcasting.api.client.ClientCastingStack; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.CapabilityManager; -import net.minecraftforge.common.capabilities.CapabilityToken; +import net.neoforged.neoforge.capabilities.EntityCapability; +import net.neoforged.neoforge.capabilities.ItemCapability; import java.util.function.Supplier; +import static at.petrak.hexcasting.api.HexAPI.modLoc; + public final class HexCapabilities { - public static final Capability MEDIA = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability IOTA = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability STORED_HEX = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability VARIANT_ITEM = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability COLOR = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability> CLIENT_CASTING_STACK = CapabilityManager.get(new CapabilityToken<>() { - }); + public static final class Item { + public static final ItemCapability MEDIA = ItemCapability.createVoid(modLoc("media_holder"), ADMediaHolder.class); + public static final ItemCapability IOTA = ItemCapability.createVoid(modLoc("iota_holder"), ADIotaHolder.class); + public static final ItemCapability STORED_HEX = ItemCapability.createVoid(modLoc("hex_holder"), ADHexHolder.class); + public static final ItemCapability VARIANT_ITEM = ItemCapability.createVoid(modLoc("variant"), ADVariantItem.class); + public static final ItemCapability COLOR = ItemCapability.createVoid(modLoc("color"), ADPigment.class); + } + + public static final class Entity { + public static final EntityCapability MEDIA = EntityCapability.createVoid(modLoc("media_holder"), ADMediaHolder.class); + public static final EntityCapability IOTA = EntityCapability.createVoid(modLoc("iota_holder"), ADIotaHolder.class); + public static final EntityCapability STORED_HEX = EntityCapability.createVoid(modLoc("hex_holder"), ADHexHolder.class); + public static final EntityCapability VARIANT_ITEM = EntityCapability.createVoid(modLoc("variant"), ADVariantItem.class); + public static final EntityCapability COLOR = EntityCapability.createVoid(modLoc("color"), ADPigment.class); + public static final EntityCapability CLIENT_CASTING_STACK = EntityCapability.createVoid(modLoc("client_casting"), ClientCastingStack.Provider.class); + } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java index bdba8678ca..3895a724aa 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java @@ -3,22 +3,25 @@ import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.forge.cap.HexCapabilities; import net.minecraft.world.entity.player.Player; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.LogicalSide; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.neoforge.event.tick.PlayerTickEvent; +import org.jetbrains.annotations.NotNull; import java.util.function.Supplier; -public record CapClientCastingStack(Player player, ClientCastingStack clientCastingStack) implements Supplier { +public record CapClientCastingStack(Player player, ClientCastingStack clientCastingStack) implements ClientCastingStack.Provider { + @Override - public ClientCastingStack get() { + public @NotNull ClientCastingStack provide() { return clientCastingStack; } @SubscribeEvent - public static void tickClientPlayer(TickEvent.PlayerTickEvent evt) { - if (evt.side == LogicalSide.CLIENT && !evt.player.isDeadOrDying()) - evt.player.getCapability(HexCapabilities.CLIENT_CASTING_STACK).resolve() - .ifPresent(CastingStack -> CastingStack.get().tick()); + public static void tickClientPlayer(PlayerTickEvent.Pre evt) { + if (evt.getEntity().level().isClientSide() && !evt.getEntity().isDeadOrDying()) { + var clientStack = evt.getEntity().getCapability(HexCapabilities.Entity.CLIENT_CASTING_STACK); + if(clientStack != null) + clientStack.provide().tick(); + } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java index a8623e6249..a8e0e77ba8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java @@ -15,12 +15,6 @@ public Wrapper(ItemDelegatingEntityIotaHolder inner) { this.inner = inner; } - - @Override - public @Nullable CompoundTag readIotaTag() { - return inner.readIotaTag(); - } - @Override public boolean writeable() { return inner.writeable(); @@ -32,8 +26,8 @@ public boolean writeIota(@Nullable Iota iota, boolean simulate) { } @Override - public @Nullable Iota readIota(ServerLevel world) { - return inner.readIota(world); + public @Nullable Iota readIota() { + return inner.readIota(); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java index 29caaeb0d0..603742bf3c 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java @@ -8,19 +8,12 @@ import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.Nullable; -public record CapItemIotaHolder(IotaHolderItem holder, - ItemStack stack) implements ADIotaHolder { +public record CapItemIotaHolder(IotaHolderItem holder, ItemStack stack) implements ADIotaHolder { @Override public @Nullable - CompoundTag readIotaTag() { - return holder.readIotaTag(stack); - } - - @Override - public @Nullable - Iota readIota(ServerLevel world) { - return holder.readIota(stack, world); + Iota readIota() { + return holder.readIota(stack); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java index f94cd93455..c0e5f947c8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java @@ -15,14 +15,7 @@ public record CapStaticIotaHolder(Function provider, @Override public @Nullable - CompoundTag readIotaTag() { - var iota = provider.apply(stack); - return iota == null ? null : IotaType.serialize(iota); - } - - @Override - public @Nullable - Iota readIota(ServerLevel world) { + Iota readIota() { return provider.apply(stack); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexConditionsBuilder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexConditionsBuilder.java index 93b1cfe529..ac7cac67af 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexConditionsBuilder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexConditionsBuilder.java @@ -1,20 +1,18 @@ package at.petrak.hexcasting.forge.datagen; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.data.recipes.FinishedRecipe; +import net.minecraft.advancements.Criterion; import net.minecraft.data.recipes.RecipeBuilder; +import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; -import net.minecraftforge.common.crafting.ConditionalRecipe; -import net.minecraftforge.common.crafting.conditions.ICondition; -import net.minecraftforge.common.crafting.conditions.IConditionBuilder; +import net.neoforged.neoforge.common.conditions.ICondition; +import net.neoforged.neoforge.common.conditions.IConditionBuilder; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; -import java.util.function.Consumer; public class ForgeHexConditionsBuilder implements IXplatConditionsBuilder, IConditionBuilder { private final List conditions = new ArrayList<>(); @@ -38,8 +36,8 @@ public IXplatConditionsBuilder whenModMissing(String modid) { @Override public @NotNull RecipeBuilder unlockedBy(@NotNull String string, - @NotNull CriterionTriggerInstance criterionTriggerInstance) { - return parent.unlockedBy(string, criterionTriggerInstance); + @NotNull Criterion criterion) { + return parent.unlockedBy(string, criterion); } @Override @@ -53,12 +51,9 @@ public IXplatConditionsBuilder whenModMissing(String modid) { } @Override - public void save(@NotNull Consumer consumer, @NotNull ResourceLocation resourceLocation) { - var conditionalBuilder = ConditionalRecipe.builder(); - for (ICondition condition : conditions) { - conditionalBuilder.addCondition(condition); - } - conditionalBuilder.addRecipe(recipeConsumer -> parent.save(recipeConsumer, resourceLocation)) - .build(consumer, resourceLocation); + public void save(RecipeOutput recipeOutput, ResourceLocation id) { + var out = recipeOutput.withConditions(conditions.toArray(ICondition[]::new)); + + parent.save(out, id); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java index c5ed351ea7..0598ab7110 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java @@ -28,12 +28,12 @@ import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; -import net.minecraftforge.common.Tags; -import net.minecraftforge.common.ToolActions; -import net.minecraftforge.common.data.DatapackBuiltinEntriesProvider; -import net.minecraftforge.common.data.ExistingFileHelper; -import net.minecraftforge.data.event.GatherDataEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.neoforge.common.ItemAbilities; +import net.neoforged.neoforge.common.Tags; +import net.neoforged.neoforge.common.data.DatapackBuiltinEntriesProvider; +import net.neoforged.neoforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.data.event.GatherDataEvent; import java.util.EnumMap; import java.util.List; @@ -43,12 +43,12 @@ public class ForgeHexDataGenerators { @SubscribeEvent public static void generateData(GatherDataEvent ev) { - if (System.getProperty("hexcasting.xplat_datagen") != null) { + //if (System.getProperty("hexcasting.xplat_datagen") != null) { configureXplatDatagen(ev); - } - if (System.getProperty("hexcasting.forge_datagen") != null) { + //} + //if (System.getProperty("hexcasting.forge_datagen") != null) { configureForgeDatagen(ev); - } + //} } private static void configureXplatDatagen(GatherDataEvent ev) { @@ -88,23 +88,24 @@ private static void configureForgeDatagen(GatherDataEvent ev) { var lookup = ev.getLookupProvider(); ExistingFileHelper efh = ev.getExistingFileHelper(); gen.addProvider(ev.includeServer(), new LootTableProvider( - output, Set.of(), List.of(new LootTableProvider.SubProviderEntry(HexLootTables::new, LootContextParamSets.ALL_PARAMS)) + output, Set.of(), List.of(new LootTableProvider.SubProviderEntry(HexLootTables::new, LootContextParamSets.ALL_PARAMS)), ev.getLookupProvider() )); - gen.addProvider(ev.includeServer(), new HexplatRecipes(output, INGREDIENTS, ForgeHexConditionsBuilder::new)); + gen.addProvider(ev.includeServer(), new HexplatRecipes(output, lookup, INGREDIENTS, ForgeHexConditionsBuilder::new)); // TODO: refactor? var xtags = IXplatAbstractions.INSTANCE.tags(); + var blockTagProvider = new HexBlockTagProvider(output, lookup, xtags); ((TagsProviderEFHSetter) blockTagProvider).setEFH(efh); gen.addProvider(ev.includeServer(), blockTagProvider); - var itemTagProvider = new HexItemTagProvider(output, lookup, blockTagProvider, IXplatAbstractions.INSTANCE.tags()); + var itemTagProvider = new HexItemTagProvider(output, lookup, blockTagProvider.contentsGetter(), IXplatAbstractions.INSTANCE.tags()); ((TagsProviderEFHSetter) itemTagProvider).setEFH(efh); gen.addProvider(ev.includeServer(), itemTagProvider); var hexTagProvider = new HexActionTagProvider(output, lookup); ((TagsProviderEFHSetter) hexTagProvider).setEFH(efh); gen.addProvider(ev.includeServer(), hexTagProvider); - gen.addProvider(ev.includeServer(), new ForgeHexLootModGen(output)); + gen.addProvider(ev.includeServer(), new ForgeHexLootModGen(output, ev.getLookupProvider())); } private static final IXplatIngredients INGREDIENTS = new IXplatIngredients() { @@ -115,7 +116,7 @@ public Ingredient glowstoneDust() { @Override public Ingredient leather() { - return Ingredient.of(Tags.Items.LEATHER); + return Ingredient.of(Tags.Items.LEATHERS); } @Override @@ -156,13 +157,13 @@ public EnumMap dyes() { public Ingredient stick() { return Ingredient.fromValues(Stream.of( new Ingredient.ItemValue(new ItemStack(Items.STICK)), - new Ingredient.TagValue(ItemTags.create(new ResourceLocation("forge", "rods/wooden"))) + new Ingredient.TagValue(ItemTags.create(ResourceLocation.fromNamespaceAndPath("forge", "rods/wooden"))) )); } @Override public Ingredient whenModIngredient(Ingredient defaultIngredient, String modid, Ingredient modIngredient) { - return ForgeModConditionalIngredient.of(defaultIngredient, modid, modIngredient); + return ForgeModConditionalIngredient.of(defaultIngredient, modid, modIngredient).toVanilla(); } // https://github.com/vectorwing/FarmersDelight/blob/1.18.2/src/generated/resources/data/farmersdelight/recipes/cutting/amethyst_block.json @@ -171,7 +172,7 @@ public FarmersDelightToolIngredient axeStrip() { return () -> { JsonObject object = new JsonObject(); object.addProperty("type", "farmersdelight:tool_action"); - object.addProperty("action", ToolActions.AXE_STRIP.name()); + object.addProperty("action", ItemAbilities.AXE_STRIP.name()); return object; }; } @@ -181,7 +182,7 @@ public FarmersDelightToolIngredient axeDig() { return () -> { JsonObject object = new JsonObject(); object.addProperty("type", "farmersdelight:tool_action"); - object.addProperty("action", ToolActions.AXE_DIG.name()); + object.addProperty("action", ItemAbilities.AXE_DIG.name()); return object; }; } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java index 26840ca6b6..210c098ad5 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java @@ -6,16 +6,19 @@ import at.petrak.hexcasting.forge.loot.ForgeHexLoreLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; +import net.minecraft.core.HolderLookup; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; -import net.minecraftforge.common.data.GlobalLootModifierProvider; -import net.minecraftforge.common.loot.LootTableIdCondition; +import net.neoforged.neoforge.common.data.GlobalLootModifierProvider; +import net.neoforged.neoforge.common.loot.LootTableIdCondition; + +import java.util.concurrent.CompletableFuture; public class ForgeHexLootModGen extends GlobalLootModifierProvider { - public ForgeHexLootModGen(PackOutput output) { - super(output, HexAPI.MOD_ID); + public ForgeHexLootModGen(PackOutput output, CompletableFuture registries) { + super(output, registries, HexAPI.MOD_ID); } @Override @@ -42,7 +45,7 @@ protected void start() { } add("amethyst_cluster", new ForgeHexAmethystLootMod(new LootItemCondition[]{ - LootTableIdCondition.builder(Blocks.AMETHYST_CLUSTER.getLootTable()).build() + LootTableIdCondition.builder(Blocks.AMETHYST_CLUSTER.getLootTable().location()).build() }, HexLootHandler.DEFAULT_SHARD_MODIFICATION)); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/TagsProviderEFHSetter.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/TagsProviderEFHSetter.java index ddda7d2966..d7a14b6358 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/TagsProviderEFHSetter.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/TagsProviderEFHSetter.java @@ -1,6 +1,6 @@ package at.petrak.hexcasting.forge.datagen; -import net.minecraftforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.common.data.ExistingFileHelper; public interface TagsProviderEFHSetter { void setEFH(ExistingFileHelper efh); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java index f4e30e8a42..063845abf8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java @@ -7,19 +7,18 @@ import at.petrak.hexcasting.common.blocks.circles.directrix.BlockBooleanDirectrix; import at.petrak.hexcasting.common.blocks.circles.directrix.BlockRedstoneDirectrix; import at.petrak.hexcasting.common.lib.HexBlocks; -import at.petrak.paucal.api.forge.datagen.PaucalBlockStateAndModelProvider; +import at.petrak.paucal.forge.api.datagen.PaucalBlockStateAndModelProvider; import net.minecraft.core.Direction; -import net.minecraft.data.DataGenerator; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.properties.BlockStateProperties; -import net.minecraftforge.client.model.generators.BlockModelBuilder; -import net.minecraftforge.client.model.generators.ConfiguredModel; -import net.minecraftforge.client.model.generators.ModelBuilder; -import net.minecraftforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.client.model.generators.BlockModelBuilder; +import net.neoforged.neoforge.client.model.generators.ConfiguredModel; +import net.neoforged.neoforge.client.model.generators.ModelBuilder; +import net.neoforged.neoforge.common.data.ExistingFileHelper; -import static net.minecraftforge.client.model.generators.ModelProvider.BLOCK_FOLDER; +import static net.neoforged.neoforge.client.model.generators.ModelProvider.BLOCK_FOLDER; public class HexBlockStatesAndModels extends PaucalBlockStateAndModelProvider { public HexBlockStatesAndModels(PackOutput output, ExistingFileHelper exFileHelper) { @@ -186,7 +185,7 @@ protected void registerStatesAndModels() { blockAndItem(HexBlocks.EDIFIED_PANEL, models().cubeAll("edified_panel", modLoc("block/edified_panel"))); blockAndItem(HexBlocks.EDIFIED_TILE, models().cubeAll("edified_tile", modLoc("block/edified_tile"))); - ResourceLocation leavesParent = new ResourceLocation("block/leaves"); + ResourceLocation leavesParent = ResourceLocation.withDefaultNamespace("block/leaves"); blockAndItem(HexBlocks.AMETHYST_EDIFIED_LEAVES, models().withExistingParent("amethyst_edified_leaves", leavesParent) .texture("all", modLoc("block/amethyst_edified_leaves")) diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java index f8a988459f..8704d66482 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java @@ -13,35 +13,37 @@ import at.petrak.hexcasting.common.items.storage.ItemThoughtKnot; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; -import at.petrak.paucal.api.forge.datagen.PaucalItemModelProvider; -import net.minecraft.client.renderer.block.model.ItemTransforms; -import net.minecraft.data.DataGenerator; +import at.petrak.paucal.forge.api.datagen.PaucalItemModelProvider; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.level.block.Block; -import net.minecraftforge.client.model.generators.ModelFile; -import net.minecraftforge.common.data.ExistingFileHelper; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.client.model.generators.ModelFile; +import net.neoforged.neoforge.common.data.ExistingFileHelper; import java.util.Objects; +import java.util.concurrent.CompletableFuture; import java.util.function.BiFunction; public class HexItemModels extends PaucalItemModelProvider { + public HexItemModels(PackOutput output, ExistingFileHelper existingFileHelper) { super(output, HexAPI.MOD_ID, existingFileHelper); } private static final String[] PHIAL_SIZES = {"small", "medium", "large", "larger", "largest"}; - private static String getPath(Item item) { - return Objects.requireNonNull(ForgeRegistries.ITEMS.getKey(item)).getPath(); + // TODO port: maybe consider using registry lookup? But it's completable future... Not sure + private String getPath(Item item) { + return Objects.requireNonNull(BuiltInRegistries.ITEM.getKey(item)).getPath(); } - private static String getPath(Block block) { - return Objects.requireNonNull(ForgeRegistries.BLOCKS.getKey(block)).getPath(); + private String getPath(Block block) { + return Objects.requireNonNull(BuiltInRegistries.BLOCK.getKey(block)).getPath(); } @Override @@ -55,11 +57,11 @@ protected void registerModels() { simpleItem(HexItems.LORE_FRAGMENT); singleTexture(getPath(HexBlocks.CONJURED_BLOCK), - new ResourceLocation("item/generated"), - "layer0", new ResourceLocation("item/amethyst_shard")); + ResourceLocation.withDefaultNamespace("item/generated"), + "layer0", ResourceLocation.withDefaultNamespace("item/amethyst_shard")); singleTexture(getPath(HexBlocks.CONJURED_LIGHT), - new ResourceLocation("item/generated"), - "layer0", new ResourceLocation("item/amethyst_shard")); + ResourceLocation.withDefaultNamespace("item/generated"), + "layer0", ResourceLocation.withDefaultNamespace("item/amethyst_shard")); for (var age : new String[]{"pristine", "ancient"}) { for (var size : new String[]{"small", "medium", "large"}) { @@ -78,9 +80,9 @@ protected void registerModels() { .translation(-2.5f, 0f, -8f) .scale(0.4f); - singleTexture("old_staff", new ResourceLocation("item/handheld_rod"), + singleTexture("old_staff", ResourceLocation.withDefaultNamespace("item/handheld_rod"), "layer0", modLoc("item/staff/old")); - singleTexture("cherry_staff", new ResourceLocation("item/handheld_rod"), + singleTexture("cherry_staff", ResourceLocation.withDefaultNamespace("item/handheld_rod"), "layer0", modLoc("item/staff/cherry")); buildStaff(HexItems.STAFF_OAK, "oak"); @@ -99,10 +101,10 @@ protected void registerModels() { // again, doesn't like paths with slashes in them, so we do it manually buildFourVariantGaslight("item/staff/quenched", "item/staff/quenched", (name, path) -> - singleTexture(path.getPath(), new ResourceLocation("item/handheld_rod"), + singleTexture(path.getPath(), ResourceLocation.withDefaultNamespace("item/handheld_rod"), "layer0", modLoc(path.getPath()))); buildFourVariantGaslight(getPath(HexItems.QUENCHED_SHARD), "item/quenched_shard", (name, path) -> - singleTexture(path.getPath(), new ResourceLocation("item/handheld"), + singleTexture(path.getPath(), ResourceLocation.withDefaultNamespace("item/handheld"), "layer0", modLoc(path.getPath()))); buildFourVariantGaslight(getPath(HexBlocks.QUENCHED_ALLAY), "block/quenched_allay", (name, path) -> cubeAll(path.getPath(), path)); @@ -130,7 +132,7 @@ protected void registerModels() { String name = "phial_" + PHIAL_SIZES[size] + "_" + fill; singleTexture( name, - new ResourceLocation("item/generated"), + ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/phial/" + name)); float fillProp = (float) fill / maxFill; @@ -144,17 +146,17 @@ protected void registerModels() { for (var dye : DyeColor.values()) { singleTexture(getPath(HexItems.DYE_PIGMENTS.get(dye)), - new ResourceLocation("item/generated"), + ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/colorizer/dye_" + dye.getName())); } for (var type : ItemPridePigment.Type.values()) { singleTexture(getPath(HexItems.PRIDE_PIGMENTS.get(type)), - new ResourceLocation("item/generated"), + ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/colorizer/pride_" + type.getName())); } - singleTexture(getPath(HexItems.UUID_PIGMENT), new ResourceLocation("item/generated"), + singleTexture(getPath(HexItems.UUID_PIGMENT), ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/colorizer/uuid")); - singleTexture(getPath(HexItems.DEFAULT_PIGMENT), new ResourceLocation("item/generated"), + singleTexture(getPath(HexItems.DEFAULT_PIGMENT), ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/colorizer/uuid")); simpleItem(modLoc("slate_blank")); @@ -205,16 +207,16 @@ protected void registerModels() { getBuilder(getPath(HexBlocks.EDIFIED_SLAB)).parent( new ModelFile.UncheckedModelFile(modLoc("block/edified_slab"))); getBuilder(getPath(HexBlocks.EDIFIED_BUTTON)).parent( - new ModelFile.UncheckedModelFile(new ResourceLocation("block/button_inventory"))) + new ModelFile.UncheckedModelFile(ResourceLocation.withDefaultNamespace("block/button_inventory"))) .texture("texture", modLoc("block/edified_planks")); getBuilder(getPath(HexBlocks.EDIFIED_PRESSURE_PLATE)) .parent(new ModelFile.UncheckedModelFile(modLoc("block/edified_pressure_plate"))); } private void buildThoughtKnot() { - var unwritten = singleTexture("thought_knot", new ResourceLocation("item/generated"), + var unwritten = singleTexture("thought_knot", ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/thought_knot")); - var written = withExistingParent("thought_knot_written", new ResourceLocation("item/generated")) + var written = withExistingParent("thought_knot_written", ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/thought_knot")) .texture("layer1", modLoc("item/thought_knot_overlay")); getBuilder("thought_knot") @@ -228,14 +230,14 @@ private void buildSealableIotaHolder(Item item, String stub, int numVariants) { var name = getPath(item); var builder = getBuilder(name); for (int i = 0; i < numVariants; i++) { - var plain = i == 0 ? singleTexture(name, new ResourceLocation("item/generated"), + var plain = i == 0 ? singleTexture(name, ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/cad/" + i + "_" + stub + "_empty")) - : withExistingParent(name + "_" + i, new ResourceLocation("item/generated")) + : withExistingParent(name + "_" + i, ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/cad/" + i + "_" + stub + "_empty")); - var unsealed = withExistingParent(name + "_" + i + "_filled", new ResourceLocation("item/generated")) + var unsealed = withExistingParent(name + "_" + i + "_filled", ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/cad/" + i + "_" + stub + "_filled")) .texture("layer1", modLoc("item/cad/" + i + "_" + stub + "_filled_overlay")); - var sealed = withExistingParent(name + "_" + i + "_sealed", new ResourceLocation("item/generated")) + var sealed = withExistingParent(name + "_" + i + "_sealed", ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/cad/" + i + "_" + stub + "_sealed")) .texture("layer1", modLoc("item/cad/" + i + "_" + stub + "_sealed_overlay")); builder.override().predicate(ItemFocus.VARIANT_PRED, i).predicate(ItemFocus.OVERLAY_PRED, 0f) @@ -258,7 +260,7 @@ private void buildScroll(Item item, String size) { } private void buildStaff(Item item, String name) { - singleTexture("item/" + getPath(item), new ResourceLocation("item/handheld_rod"), + singleTexture("item/" + getPath(item), ResourceLocation.withDefaultNamespace("item/handheld_rod"), "layer0", modLoc("item/staff/" + name)); getBuilder(getPath(item)) .override() @@ -276,11 +278,11 @@ private void buildPackagedSpell(Item item, String stub, int numVariants) { var name = getPath(item); var builder = getBuilder(name); for (int i = 0; i < numVariants; i++) { - var plain = i == 0 ? singleTexture(name, new ResourceLocation("item/generated"), + var plain = i == 0 ? singleTexture(name, ResourceLocation.withDefaultNamespace("item/generated"), "layer0", modLoc("item/cad/" + i + "_" + stub)) - : withExistingParent(name + "_" + i, new ResourceLocation("item/generated")) + : withExistingParent(name + "_" + i, ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/cad/" + i + "_" + stub)); - var filled = withExistingParent(name + "_" + i + "_filled", new ResourceLocation("item/generated")) + var filled = withExistingParent(name + "_" + i + "_filled", ResourceLocation.withDefaultNamespace("item/generated")) .texture("layer0", modLoc("item/cad/" + i + "_" + stub)) .texture("layer1", modLoc("item/cad/" + i + "_" + stub + "_overlay")); builder.override().predicate(ItemFocus.VARIANT_PRED, i).predicate(ItemPackagedHex.HAS_PATTERNS_PRED, -0.01f) diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java index dfb750c35a..2d13ccb6d9 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java @@ -3,25 +3,19 @@ import at.petrak.hexcasting.api.misc.DiscoveryHandlers; import at.petrak.hexcasting.common.items.HexBaubleItem; import at.petrak.hexcasting.common.items.magic.ItemCreativeUnlocker; -import at.petrak.hexcasting.forge.cap.ForgeCapabilityHandler; -import at.petrak.hexcasting.interop.HexInterop; import com.google.common.collect.Multimap; +import net.minecraft.core.Holder; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.AttributeModifier; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.fml.InterModComms; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent; +import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import top.theillusivec4.curios.api.CuriosCapability; import top.theillusivec4.curios.api.SlotContext; -import top.theillusivec4.curios.api.SlotTypeMessage; -import top.theillusivec4.curios.api.SlotTypePreset; import top.theillusivec4.curios.api.type.capability.ICurio; -import java.util.UUID; -import java.util.concurrent.atomic.AtomicReference; - public class CuriosApiInterop { static class Wrapper implements ICurio { private final ItemStack stack; @@ -42,40 +36,35 @@ public ItemStack getStack() { } @Override - public Multimap getAttributeModifiers(SlotContext slotContext, UUID uuid) { - var map = ICurio.super.getAttributeModifiers(slotContext, uuid); + public Multimap, AttributeModifier> getAttributeModifiers(SlotContext slotContext, ResourceLocation id) { + var map = ICurio.super.getAttributeModifiers(slotContext, id); map.putAll(this.bauble.getHexBaubleAttrs(this.stack)); return map; } } - public static ICapabilityProvider curioCap(ItemStack stack) { - return ForgeCapabilityHandler.makeProvider(CuriosCapability.ITEM, new Wrapper(stack)); - } - public static void init() { DiscoveryHandlers.addDebugItemDiscoverer((player, type) -> { - AtomicReference result = new AtomicReference<>(ItemStack.EMPTY); - player.getCapability(CuriosCapability.INVENTORY).ifPresent(handler -> { - for (var stacksHandler : handler.getCurios().values()) { + var inv = player.getCapability(CuriosCapability.INVENTORY); + + if(inv != null) { + for (var stacksHandler : inv.getCurios().values()) { var stacks = stacksHandler.getStacks(); for (int i = 0; i < stacks.getSlots(); i++) { var stack = stacks.getStackInSlot(i); if (ItemCreativeUnlocker.isDebug(stack, type)) { - result.set(stack); - return; + return stack; } } } - }); - return result.get(); + } + return ItemStack.EMPTY; }); } - public static void onInterModEnqueue(final InterModEnqueueEvent event) { - InterModComms.sendTo(HexInterop.Forge.CURIOS_API_ID, SlotTypeMessage.REGISTER_TYPE, - () -> SlotTypePreset.HEAD.getMessageBuilder().build()); + public static void registerCap(RegisterCapabilitiesEvent evt, Item item) { + evt.registerItem(CuriosCapability.ITEM, (stack, ctx) -> new Wrapper(stack), item); } public static void onClientSetup(final FMLClientSetupEvent event) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosRenderers.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosRenderers.java index 3ec7edd483..a7785611ee 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosRenderers.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosRenderers.java @@ -8,12 +8,9 @@ import net.minecraft.client.model.geom.builders.CubeListBuilder; import net.minecraft.client.model.geom.builders.LayerDefinition; import net.minecraft.client.model.geom.builders.MeshDefinition; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.client.event.EntityRenderersEvent; +import net.neoforged.neoforge.client.event.EntityRenderersEvent; import top.theillusivec4.curios.api.client.CuriosRendererRegistry; -@OnlyIn(Dist.CLIENT) public class CuriosRenderers { public static void register() { CuriosRendererRegistry.register(HexItems.SCRYING_LENS, () -> new LensCurioRenderer(Minecraft.getInstance().getEntityModels().bakeLayer(LensCurioRenderer.LAYER))); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/LensCurioRenderer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/LensCurioRenderer.java index 38f5ff065f..a9f590d950 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/LensCurioRenderer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/LensCurioRenderer.java @@ -19,7 +19,7 @@ import top.theillusivec4.curios.api.client.ICurioRenderer; public class LensCurioRenderer implements ICurioRenderer { - public static final ModelLayerLocation LAYER = new ModelLayerLocation(new ResourceLocation(HexAPI.MOD_ID, "lens"), "lens"); + public static final ModelLayerLocation LAYER = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, "lens"), "lens"); private final HumanoidModel model; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java index 6dddb8015a..9c739a32a0 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java @@ -1,9 +1,11 @@ package at.petrak.hexcasting.forge.interop.jei; import at.petrak.hexcasting.client.ClientTickCounter; +import at.petrak.hexcasting.common.casting.actions.spells.OpEdifySapling; import at.petrak.hexcasting.common.recipe.BrainsweepRecipe; import com.mojang.blaze3d.systems.RenderSystem; import mezz.jei.api.gui.builder.IRecipeLayoutBuilder; +import mezz.jei.api.gui.builder.ITooltipBuilder; import mezz.jei.api.gui.drawable.IDrawable; import mezz.jei.api.gui.drawable.IDrawableStatic; import mezz.jei.api.gui.ingredient.IRecipeSlotsView; @@ -18,8 +20,6 @@ import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; import org.jetbrains.annotations.NotNull; import java.util.Collections; @@ -44,16 +44,19 @@ public BrainsweepRecipeCategory(IGuiHelper guiHelper) { } @Override - @OnlyIn(Dist.CLIENT) public @NotNull Component getTitle() { return localizedName; } @Override - public @NotNull - IDrawable getBackground() { - return background; + public int getWidth() { + return background.getWidth(); + } + + @Override + public int getHeight() { + return background.getHeight(); } @Override @@ -63,19 +66,16 @@ IDrawable getIcon() { } @Override - public @NotNull - List getTooltipStrings(@NotNull BrainsweepRecipe recipe, - @NotNull IRecipeSlotsView recipeSlotsView, double mouseX, double mouseY) { + public void getTooltip(ITooltipBuilder tooltip, BrainsweepRecipe recipe, IRecipeSlotsView recipeSlotsView, double mouseX, double mouseY) { if (37 <= mouseX && mouseX <= 37 + 26 && 19 <= mouseY && mouseY <= 19 + 48) { Minecraft mc = Minecraft.getInstance(); - return recipe.entityIn().getTooltip(mc.options.advancedItemTooltips); + tooltip.addAll(recipe.entityIn().getTooltip(mc.options.advancedItemTooltips)); } - - return Collections.emptyList(); } @Override public void draw(@NotNull BrainsweepRecipe recipe, @NotNull IRecipeSlotsView recipeSlotsView, @NotNull GuiGraphics graphics, double mouseX, double mouseY) { + background.draw(graphics); ClientLevel level = Minecraft.getInstance().level; if (level != null) { var example = recipe.entityIn().exampleEntity(level); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/EdifyRecipeCategory.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/EdifyRecipeCategory.java index 84ab9bab31..10c8d91a44 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/EdifyRecipeCategory.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/EdifyRecipeCategory.java @@ -5,18 +5,18 @@ import mezz.jei.api.gui.builder.IRecipeLayoutBuilder; import mezz.jei.api.gui.drawable.IDrawable; import mezz.jei.api.gui.drawable.IDrawableStatic; +import mezz.jei.api.gui.ingredient.IRecipeSlotsView; import mezz.jei.api.helpers.IGuiHelper; import mezz.jei.api.recipe.IFocusGroup; import mezz.jei.api.recipe.RecipeIngredientRole; import mezz.jei.api.recipe.RecipeType; import mezz.jei.api.recipe.category.IRecipeCategory; +import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; import org.jetbrains.annotations.NotNull; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -37,14 +37,23 @@ public EdifyRecipeCategory(IGuiHelper guiHelper) { } @Override - @OnlyIn(Dist.CLIENT) public @NotNull Component getTitle() { return localizedName; } @Override - public @NotNull IDrawable getBackground() { - return background; + public int getWidth() { + return background.getWidth(); + } + + @Override + public int getHeight() { + return background.getHeight(); + } + + @Override + public void draw(OpEdifySapling recipe, IRecipeSlotsView recipeSlotsView, GuiGraphics guiGraphics, double mouseX, double mouseY) { + background.draw(guiGraphics); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/HexJEIPlugin.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/HexJEIPlugin.java index 32572ba10c..6e708cfacd 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/HexJEIPlugin.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/HexJEIPlugin.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.crafting.RecipeHolder; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; @@ -57,7 +58,7 @@ public void registerRecipes(@NotNull IRecipeRegistration registration) { Level level = Minecraft.getInstance().level; if (level != null) { registration.addRecipes(BRAINSWEEPING, - level.getRecipeManager().getAllRecipesFor(HexRecipeStuffRegistry.BRAINSWEEP_TYPE)); + level.getRecipeManager().getAllRecipesFor(HexRecipeStuffRegistry.BRAINSWEEP_TYPE).stream().map(RecipeHolder::value).toList()); } if (PhialRecipeStackBuilder.shouldAddRecipe()) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java index 23a4272a4e..46d1645998 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java @@ -1,21 +1,22 @@ package at.petrak.hexcasting.forge.interop.jei; import at.petrak.hexcasting.api.mod.HexTags; +import at.petrak.hexcasting.common.casting.actions.spells.OpEdifySapling; import at.petrak.hexcasting.common.casting.actions.spells.OpMakeBattery; import at.petrak.hexcasting.interop.utils.PhialRecipeStackBuilder; import mezz.jei.api.gui.builder.IRecipeLayoutBuilder; import mezz.jei.api.gui.drawable.IDrawable; import mezz.jei.api.gui.drawable.IDrawableStatic; +import mezz.jei.api.gui.ingredient.IRecipeSlotsView; import mezz.jei.api.helpers.IGuiHelper; import mezz.jei.api.recipe.IFocusGroup; import mezz.jei.api.recipe.RecipeIngredientRole; import mezz.jei.api.recipe.RecipeType; import mezz.jei.api.recipe.category.IRecipeCategory; +import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; import org.jetbrains.annotations.NotNull; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -36,14 +37,23 @@ public PhialRecipeCategory(IGuiHelper guiHelper) { } @Override - @OnlyIn(Dist.CLIENT) public @NotNull Component getTitle() { return localizedName; } @Override - public @NotNull IDrawable getBackground() { - return background; + public int getWidth() { + return background.getWidth(); + } + + @Override + public int getHeight() { + return background.getHeight(); + } + + @Override + public void draw(OpMakeBattery recipe, IRecipeSlotsView recipeSlotsView, GuiGraphics guiGraphics, double mouseX, double mouseY) { + background.draw(guiGraphics); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexArgumentTypeRegistry.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexArgumentTypeRegistry.java index 4a3450372a..4dfa83695f 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexArgumentTypeRegistry.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexArgumentTypeRegistry.java @@ -1,30 +1,30 @@ package at.petrak.hexcasting.forge.lib; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.common.command.PatternResLocArgument; +import at.petrak.hexcasting.common.command.PatternResKeyArgument; import com.mojang.brigadier.arguments.ArgumentType; import net.minecraft.commands.synchronization.ArgumentTypeInfo; import net.minecraft.commands.synchronization.ArgumentTypeInfos; import net.minecraft.commands.synchronization.SingletonArgumentInfo; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegistryObject; +import net.minecraft.core.registries.Registries; +import net.neoforged.neoforge.registries.DeferredHolder; +import net.neoforged.neoforge.registries.DeferredRegister; // ArgumentTypeInfos.java public class ForgeHexArgumentTypeRegistry { public static final DeferredRegister> ARGUMENT_TYPES = DeferredRegister.create( - ForgeRegistries.COMMAND_ARGUMENT_TYPES, HexAPI.MOD_ID); + Registries.COMMAND_ARGUMENT_TYPE, HexAPI.MOD_ID); // how fucking ergonomic - public static final RegistryObject.Template>> - PATTERN_RESLOC = register(PatternResLocArgument.class, + public static final DeferredHolder, ArgumentTypeInfo.Template>> + PATTERN_RESLOC = register(PatternResKeyArgument.class, "pattern", - SingletonArgumentInfo.contextFree(PatternResLocArgument::id) + SingletonArgumentInfo.contextFree(PatternResKeyArgument::id) ); private static , T extends ArgumentTypeInfo.Template, I extends ArgumentTypeInfo> - RegistryObject> register( + DeferredHolder, ArgumentTypeInfo> register( Class clazz, String name, ArgumentTypeInfo ati) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java new file mode 100644 index 0000000000..4338e18751 --- /dev/null +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java @@ -0,0 +1,22 @@ +package at.petrak.hexcasting.forge.lib; + +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.forge.recipe.ForgeModConditionalIngredient; +import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; +import net.neoforged.neoforge.common.crafting.IngredientType; +import net.neoforged.neoforge.registries.DeferredRegister; +import net.neoforged.neoforge.registries.NeoForgeRegistries; + +import java.util.function.Supplier; + +public class ForgeHexIngredientTypes { + public static final DeferredRegister> INGREDIENT_TYPES = + DeferredRegister.create(NeoForgeRegistries.Keys.INGREDIENT_TYPES, HexAPI.MOD_ID); + + public static final Supplier> UNSEALED_INGREDIENT = + INGREDIENT_TYPES.register("unsealed", + () -> new IngredientType<>(ForgeUnsealedIngredient.CODEC, ForgeUnsealedIngredient.STREAM_CODEC)); + public static final Supplier> MOD_CONDITIONAL_INGREDIENT = + INGREDIENT_TYPES.register("mod_conditional", + () -> new IngredientType<>(ForgeModConditionalIngredient.CODEC, ForgeModConditionalIngredient.STREAM_CODEC)); +} diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java index 7581f6aaab..e6e36db9b4 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java @@ -6,21 +6,23 @@ import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; import com.mojang.serialization.Codec; -import net.minecraftforge.common.loot.IGlobalLootModifier; -import net.minecraftforge.registries.DeferredRegister; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegistryObject; +import com.mojang.serialization.MapCodec; +import net.minecraft.core.registries.Registries; +import net.neoforged.neoforge.common.loot.IGlobalLootModifier; +import net.neoforged.neoforge.registries.DeferredHolder; +import net.neoforged.neoforge.registries.DeferredRegister; +import net.neoforged.neoforge.registries.NeoForgeRegistries; public class ForgeHexLootMods { - public static final DeferredRegister> REGISTRY = DeferredRegister.create( - ForgeRegistries.Keys.GLOBAL_LOOT_MODIFIER_SERIALIZERS, HexAPI.MOD_ID); + public static final DeferredRegister> REGISTRY = DeferredRegister.create( + NeoForgeRegistries.Keys.GLOBAL_LOOT_MODIFIER_SERIALIZERS, HexAPI.MOD_ID); - public static final RegistryObject> INJECT_SCROLLS = REGISTRY.register( + public static final DeferredHolder, MapCodec> INJECT_SCROLLS = REGISTRY.register( "inject_scrolls", ForgeHexScrollLootMod.CODEC); - public static final RegistryObject> INJECT_LORE = REGISTRY.register( + public static final DeferredHolder, MapCodec> INJECT_LORE = REGISTRY.register( "inject_lore", ForgeHexLoreLootMod.CODEC); - public static final RegistryObject> INJECT_CYPHERS = REGISTRY.register( + public static final DeferredHolder, MapCodec> INJECT_CYPHERS = REGISTRY.register( "inject_cyphers", ForgeHexCypherLootMod.CODEC); - public static final RegistryObject> AMETHYST = REGISTRY.register( + public static final DeferredHolder, MapCodec> AMETHYST = REGISTRY.register( "amethyst_cluster", ForgeHexAmethystLootMod.CODEC); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java index 671e9cec5b..47ea0dad38 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java @@ -5,19 +5,21 @@ import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import com.google.common.base.Suppliers; import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.registries.Registries; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; -import net.minecraftforge.common.loot.LootModifier; +import net.neoforged.neoforge.common.loot.LootModifier; import org.jetbrains.annotations.NotNull; import java.util.function.Supplier; public class ForgeHexAmethystLootMod extends LootModifier { - public static final Supplier> CODEC = - Suppliers.memoize(() -> RecordCodecBuilder.create( + public static final Supplier> CODEC = + Suppliers.memoize(() -> RecordCodecBuilder.mapCodec( inst -> codecStart(inst).and( Codec.DOUBLE.fieldOf("shardDelta").forGetter(it -> it.shardDelta) ).apply(inst, ForgeHexAmethystLootMod::new) @@ -33,8 +35,12 @@ public ForgeHexAmethystLootMod(LootItemCondition[] conditionsIn, double shardDel @Override protected @NotNull ObjectArrayList doApply(ObjectArrayList generatedLoot, LootContext context) { - var injectPool = context.getResolver().getLootTable(HexLootHandler.TABLE_INJECT_AMETHYST_CLUSTER); - injectPool.getRandomItemsRaw(context, generatedLoot::add); + var injectPool = context.getResolver() + .lookupOrThrow(Registries.LOOT_TABLE) + .getOrThrow(HexLootHandler.TABLE_INJECT_AMETHYST_CLUSTER) + .value(); + //TODO check if should be raw with modifiers applied or not + injectPool.getRandomItems(context, generatedLoot::add); for (var stack : generatedLoot) { AmethystReducerFunc.doStatic(stack, context, this.shardDelta); @@ -44,7 +50,7 @@ public ForgeHexAmethystLootMod(LootItemCondition[] conditionsIn, double shardDel } @Override - public Codec codec() { + public MapCodec codec() { return ForgeHexLootMods.AMETHYST.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexCypherLootMod.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexCypherLootMod.java index 385bf4a64e..ad5e2d13c7 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexCypherLootMod.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexCypherLootMod.java @@ -5,19 +5,20 @@ import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import com.google.common.base.Suppliers; import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import it.unimi.dsi.fastutil.objects.ObjectArrayList; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; -import net.minecraftforge.common.loot.LootModifier; +import net.neoforged.neoforge.common.loot.LootModifier; import org.jetbrains.annotations.NotNull; import java.util.function.Supplier; public class ForgeHexCypherLootMod extends LootModifier { - public static final Supplier> CODEC = - Suppliers.memoize(() -> RecordCodecBuilder.create( + public static final Supplier> CODEC = + Suppliers.memoize(() -> RecordCodecBuilder.mapCodec( inst -> codecStart(inst).and( Codec.DOUBLE.fieldOf("chance").forGetter(it -> it.chance) ).apply(inst, ForgeHexCypherLootMod::new) @@ -42,7 +43,7 @@ public ForgeHexCypherLootMod(LootItemCondition[] conditionsIn, double chance) { } @Override - public Codec codec() { + public MapCodec codec() { return ForgeHexLootMods.INJECT_CYPHERS.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexLoreLootMod.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexLoreLootMod.java index e5de13a237..b12b8a85df 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexLoreLootMod.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexLoreLootMod.java @@ -4,19 +4,20 @@ import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import com.google.common.base.Suppliers; import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import it.unimi.dsi.fastutil.objects.ObjectArrayList; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; -import net.minecraftforge.common.loot.LootModifier; +import net.neoforged.neoforge.common.loot.LootModifier; import org.jetbrains.annotations.NotNull; import java.util.function.Supplier; public class ForgeHexLoreLootMod extends LootModifier { - public static final Supplier> CODEC = - Suppliers.memoize(() -> RecordCodecBuilder.create( + public static final Supplier> CODEC = + Suppliers.memoize(() -> RecordCodecBuilder.mapCodec( inst -> codecStart(inst).and( Codec.DOUBLE.fieldOf("chance").forGetter(it -> it.chance) ).apply(inst, ForgeHexLoreLootMod::new) @@ -39,7 +40,7 @@ public ForgeHexLoreLootMod(LootItemCondition[] conditionsIn, double chance) { } @Override - public Codec codec() { + public MapCodec codec() { return ForgeHexLootMods.INJECT_LORE.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexScrollLootMod.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexScrollLootMod.java index fe1a2dda87..107c95a647 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexScrollLootMod.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexScrollLootMod.java @@ -6,20 +6,21 @@ import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import com.google.common.base.Suppliers; import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import it.unimi.dsi.fastutil.objects.ObjectArrayList; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; -import net.minecraftforge.common.loot.IGlobalLootModifier; -import net.minecraftforge.common.loot.LootModifier; +import net.neoforged.neoforge.common.loot.IGlobalLootModifier; +import net.neoforged.neoforge.common.loot.LootModifier; import org.jetbrains.annotations.NotNull; import java.util.function.Supplier; public class ForgeHexScrollLootMod extends LootModifier { - public static final Supplier> CODEC = - Suppliers.memoize(() -> RecordCodecBuilder.create( + public static final Supplier> CODEC = + Suppliers.memoize(() -> RecordCodecBuilder.mapCodec( inst -> codecStart(inst).and( Codec.INT.fieldOf("countRange").forGetter(it -> it.countRange) ).apply(inst, ForgeHexScrollLootMod::new) @@ -45,7 +46,7 @@ public ForgeHexScrollLootMod(LootItemCondition[] conditionsIn, int countRange) { } @Override - public Codec codec() { + public MapCodec codec() { return ForgeHexLootMods.INJECT_SCROLLS.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeAccessorBuiltInRegistries.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeAccessorBuiltInRegistries.java deleted file mode 100644 index b086d8714d..0000000000 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeAccessorBuiltInRegistries.java +++ /dev/null @@ -1,25 +0,0 @@ -package at.petrak.hexcasting.forge.mixin; - -import net.minecraft.core.DefaultedRegistry; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceKey; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Invoker; - -@Mixin(BuiltInRegistries.class) -public interface ForgeAccessorBuiltInRegistries { - @Invoker("registerDefaulted") - static DefaultedRegistry hex$registerDefaulted(ResourceKey> registryName, - String defaultId, - BuiltInRegistries.RegistryBootstrap bootstrap) { - throw new IllegalStateException(); - } - - @Invoker("registerSimple") - static Registry hex$registerSimple(ResourceKey> registryName, - BuiltInRegistries.RegistryBootstrap bootstrap) { - throw new IllegalStateException(); - } -} - diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeMixinTagsProvider.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeMixinTagsProvider.java index e815506337..4d731fac7e 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeMixinTagsProvider.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/mixin/ForgeMixinTagsProvider.java @@ -2,7 +2,7 @@ import at.petrak.hexcasting.forge.datagen.TagsProviderEFHSetter; import net.minecraft.data.tags.TagsProvider; -import net.minecraftforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.common.data.ExistingFileHelper; import org.objectweb.asm.Opcodes; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -25,7 +25,7 @@ public void setEFH(ExistingFileHelper efh) { @Redirect(method = "missing(Lnet/minecraft/tags/TagEntry;)Z", at = @At( value = "FIELD", - target = "Lnet/minecraft/data/tags/TagsProvider;existingFileHelper:Lnet/minecraftforge/common/data/ExistingFileHelper;", + target = "Lnet/minecraft/data/tags/TagsProvider;existingFileHelper:Lnet/neoforged/neoforge/common/data/ExistingFileHelper;", opcode = Opcodes.GETFIELD), remap = false) private ExistingFileHelper hex$missingRedirect(TagsProvider instance) { @@ -34,9 +34,9 @@ public void setEFH(ExistingFileHelper efh) { return actualFileHelper; } - @Redirect(method = "lambda$getOrCreateRawBuilder$9(Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder;", at = @At( + @Redirect(method = "getOrCreateRawBuilder", at = @At( value = "FIELD", - target = "Lnet/minecraft/data/tags/TagsProvider;existingFileHelper:Lnet/minecraftforge/common/data/ExistingFileHelper;", + target = "Lnet/minecraft/data/tags/TagsProvider;existingFileHelper:Lnet/neoforged/neoforge/common/data/ExistingFileHelper;", opcode = Opcodes.GETFIELD), remap = false) private ExistingFileHelper hex$getOrCreateRawBuilderRedirect(TagsProvider instance) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java index 78485aa6f9..5245c0c3a0 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java @@ -1,82 +1,69 @@ package at.petrak.hexcasting.forge.network; import at.petrak.hexcasting.common.msgs.*; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; -import net.minecraftforge.network.NetworkEvent; -import net.minecraftforge.network.NetworkRegistry; -import net.minecraftforge.network.simple.SimpleChannel; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent; +import net.neoforged.neoforge.network.handling.IPayloadHandler; +import net.neoforged.neoforge.network.registration.PayloadRegistrar; import org.apache.logging.log4j.util.TriConsumer; -import java.util.function.BiConsumer; import java.util.function.Consumer; -import java.util.function.Supplier; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgePacketHandler { - private static final String PROTOCOL_VERSION = "1"; - private static final SimpleChannel NETWORK = NetworkRegistry.newSimpleChannel( - modLoc("main"), - () -> PROTOCOL_VERSION, - PROTOCOL_VERSION::equals, - PROTOCOL_VERSION::equals - ); - - public static SimpleChannel getNetwork() { - return NETWORK; - } - public static void init() { - int messageIdx = 0; + public static void init(IEventBus modBus) { + modBus.addListener(RegisterPayloadHandlersEvent.class, ev -> { + final PayloadRegistrar registar = ev.registrar("1"); - // Client -> server - NETWORK.registerMessage(messageIdx++, MsgNewSpellPatternC2S.class, MsgNewSpellPatternC2S::serialize, - MsgNewSpellPatternC2S::deserialize, makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); - NETWORK.registerMessage(messageIdx++, MsgShiftScrollC2S.class, MsgShiftScrollC2S::serialize, - MsgShiftScrollC2S::deserialize, makeServerBoundHandler(MsgShiftScrollC2S::handle)); + // Client -> server + registar.playToServer(MsgNewSpellPatternC2S.TYPE, MsgNewSpellPatternC2S.STREAM_CODEC, + makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); + registar.playToServer(MsgShiftScrollC2S.TYPE, MsgShiftScrollC2S.STREAM_CODEC, + makeServerBoundHandler(MsgShiftScrollC2S::handle)); - // Server -> client - NETWORK.registerMessage(messageIdx++, MsgNewSpellPatternS2C.class, MsgNewSpellPatternS2C::serialize, - MsgNewSpellPatternS2C::deserialize, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBlinkS2C.class, MsgBlinkS2C::serialize, - MsgBlinkS2C::deserialize, makeClientBoundHandler(MsgBlinkS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgSentinelStatusUpdateAck.class, MsgSentinelStatusUpdateAck::serialize, - MsgSentinelStatusUpdateAck::deserialize, makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgPigmentUpdateAck.class, MsgPigmentUpdateAck::serialize, - MsgPigmentUpdateAck::deserialize, makeClientBoundHandler(MsgPigmentUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgAltioraUpdateAck.class, MsgAltioraUpdateAck::serialize, - MsgAltioraUpdateAck::deserialize, makeClientBoundHandler(MsgAltioraUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgCastParticleS2C.class, MsgCastParticleS2C::serialize, - MsgCastParticleS2C::deserialize, makeClientBoundHandler(MsgCastParticleS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgOpenSpellGuiS2C.class, MsgOpenSpellGuiS2C::serialize, - MsgOpenSpellGuiS2C::deserialize, makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBeepS2C.class, MsgBeepS2C::serialize, - MsgBeepS2C::deserialize, makeClientBoundHandler(MsgBeepS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBrainsweepAck.class, MsgBrainsweepAck::serialize, - MsgBrainsweepAck::deserialize, makeClientBoundHandler(MsgBrainsweepAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgNewWallScrollS2C.class, MsgNewWallScrollS2C::serialize, - MsgNewWallScrollS2C::deserialize, makeClientBoundHandler(MsgNewWallScrollS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgRecalcWallScrollDisplayS2C.class, MsgRecalcWallScrollDisplayS2C::serialize, - MsgRecalcWallScrollDisplayS2C::deserialize, makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgNewSpiralPatternsS2C.class, MsgNewSpiralPatternsS2C::serialize, - MsgNewSpiralPatternsS2C::deserialize, makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgClearSpiralPatternsS2C.class, MsgClearSpiralPatternsS2C::serialize, - MsgClearSpiralPatternsS2C::deserialize, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); + // Server -> client + registar.playToClient(MsgNewSpellPatternS2C.TYPE, MsgNewSpellPatternS2C.STREAM_CODEC, + makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); + registar.playToClient(MsgBlinkS2C.TYPE, MsgBlinkS2C.STREAM_CODEC, + makeClientBoundHandler(MsgBlinkS2C::handle)); + registar.playToClient(MsgSentinelStatusUpdateAck.TYPE, MsgSentinelStatusUpdateAck.STREAM_CODEC, + makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); + registar.playToClient(MsgPigmentUpdateAck.TYPE, MsgPigmentUpdateAck.STREAM_CODEC, + makeClientBoundHandler(MsgPigmentUpdateAck::handle)); + registar.playToClient(MsgAltioraUpdateAck.TYPE, MsgAltioraUpdateAck.STREAM_CODEC, + makeClientBoundHandler(MsgAltioraUpdateAck::handle)); + registar.playToClient(MsgCastParticleS2C.TYPE, MsgCastParticleS2C.STREAM_CODEC, + makeClientBoundHandler(MsgCastParticleS2C::handle)); + registar.playToClient(MsgOpenSpellGuiS2C.TYPE, MsgOpenSpellGuiS2C.STREAM_CODEC, + makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); + registar.playToClient(MsgBeepS2C.TYPE, MsgBeepS2C.STREAM_CODEC, + makeClientBoundHandler(MsgBeepS2C::handle)); + registar.playToClient(MsgBrainsweepAck.TYPE, MsgBrainsweepAck.STREAM_CODEC, + makeClientBoundHandler(MsgBrainsweepAck::handle)); + registar.playToClient(MsgNewWallScrollS2C.TYPE, MsgNewWallScrollS2C.STREAM_CODEC, + makeClientBoundHandler(MsgNewWallScrollS2C::handle)); + registar.playToClient(MsgRecalcWallScrollDisplayS2C.TYPE, MsgRecalcWallScrollDisplayS2C.STREAM_CODEC, + makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); + registar.playToClient(MsgNewSpiralPatternsS2C.TYPE, MsgNewSpiralPatternsS2C.STREAM_CODEC, + makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); + registar.playToClient(MsgClearSpiralPatternsS2C.TYPE, MsgClearSpiralPatternsS2C.STREAM_CODEC, + makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); + }); } - private static BiConsumer> makeServerBoundHandler( + private static IPayloadHandler makeServerBoundHandler( TriConsumer handler) { return (m, ctx) -> { - handler.accept(m, ctx.get().getSender().getServer(), ctx.get().getSender()); - ctx.get().setPacketHandled(true); + handler.accept(m, ctx.player().getServer(), (ServerPlayer) ctx.player()); }; } - private static BiConsumer> makeClientBoundHandler(Consumer consumer) { + private static IPayloadHandler makeClientBoundHandler(Consumer consumer) { return (m, ctx) -> { consumer.accept(m); - ctx.get().setPacketHandled(true); }; } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java index 0e932b55ea..b3934d0342 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java @@ -1,51 +1,38 @@ package at.petrak.hexcasting.forge.network; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.player.AltioraAbility; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import org.jetbrains.annotations.Nullable; -import static at.petrak.hexcasting.api.HexAPI.modLoc; +import java.util.Optional; -public record MsgAltioraUpdateAck(@Nullable AltioraAbility altiora) implements IMessage { - public static final ResourceLocation ID = modLoc("altiora"); +public record MsgAltioraUpdateAck(@Nullable AltioraAbility altiora) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("altiora")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgAltioraUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var extant = buf.readBoolean(); - if (!extant) { - return new MsgAltioraUpdateAck(null); - } - var grace = buf.readVarInt(); - return new MsgAltioraUpdateAck(new AltioraAbility(grace)); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.optional(AltioraAbility.STREAM_CODEC).map( + opt -> opt.orElse(null), + Optional::ofNullable + ), MsgAltioraUpdateAck::altiora, + MsgAltioraUpdateAck::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeBoolean(this.altiora != null); - if (this.altiora != null) { - buf.writeVarInt(this.altiora.gracePeriod()); - } + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgAltioraUpdateAck self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setAltiora(player, self.altiora); - } + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setAltiora(player, self.altiora); } }); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java index c9d24606fc..4471de9948 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java @@ -1,37 +1,38 @@ package at.petrak.hexcasting.forge.network; +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; +import java.util.Optional; + import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent server->client to synchronize the status of a brainswept mob. */ -public record MsgBrainsweepAck(int target) implements IMessage { - public static final ResourceLocation ID = modLoc("sweep"); - - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgBrainsweepAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); +public record MsgBrainsweepAck(int target) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("sweep")); - var target = buf.readInt(); - return new MsgBrainsweepAck(target); - } + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.INT.map( + MsgBrainsweepAck::new, + MsgBrainsweepAck::target + ).mapStream(b -> b); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeInt(target); + public CustomPacketPayload.Type type() { + return TYPE; } public static MsgBrainsweepAck of(Entity target) { @@ -39,15 +40,12 @@ public static MsgBrainsweepAck of(Entity target) { } public static void handle(MsgBrainsweepAck msg) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var level = Minecraft.getInstance().level; - if (level != null) { - Entity entity = level.getEntity(msg.target()); - if (entity instanceof Mob living) { - IXplatAbstractions.INSTANCE.setBrainsweepAddlData(living); - } + Minecraft.getInstance().execute(() -> { + var level = Minecraft.getInstance().level; + if (level != null) { + Entity entity = level.getEntity(msg.target()); + if (entity instanceof Mob living) { + IXplatAbstractions.INSTANCE.setBrainsweepAddlData(living); } } }); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java index c38266b1ae..77e413b16f 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java @@ -1,11 +1,17 @@ package at.petrak.hexcasting.forge.network; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.common.msgs.IMessage; +import at.petrak.hexcasting.common.msgs.MsgBlinkS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.paucal.api.PaucalCodecs; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -13,35 +19,24 @@ /** * Sent server->client to synchronize the status of the sentinel. */ -public record MsgPigmentUpdateAck(FrozenPigment update) implements IMessage { - public static final ResourceLocation ID = modLoc("color"); +public record MsgPigmentUpdateAck(FrozenPigment update) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("color")); - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgPigmentUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var tag = buf.readAnySizeNbt(); - var colorizer = FrozenPigment.fromNBT(tag); - return new MsgPigmentUpdateAck(colorizer); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + FrozenPigment.STREAM_CODEC, MsgPigmentUpdateAck::update, + MsgPigmentUpdateAck::new + ); @Override - public void serialize(FriendlyByteBuf buf) { - buf.writeNbt(this.update.serializeToNBT()); + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgPigmentUpdateAck self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setPigment(player, self.update()); - } + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setPigment(player, self.update()); } }); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java index dc8f712d8e..f0971773ae 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java @@ -1,70 +1,53 @@ package at.petrak.hexcasting.forge.network; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.common.msgs.IMessage; +import at.petrak.hexcasting.common.msgs.MsgBlinkS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.paucal.api.PaucalCodecs; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.phys.Vec3; import javax.annotation.Nullable; +import java.util.Optional; + import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent server->client to synchronize the status of the sentinel. */ -public record MsgSentinelStatusUpdateAck(@Nullable Sentinel update) implements IMessage { - public static final ResourceLocation ID = modLoc("sntnl"); - - @Override - public ResourceLocation getFabricId() { - return ID; - } - - public static MsgSentinelStatusUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); +public record MsgSentinelStatusUpdateAck(@Nullable Sentinel update) implements CustomPacketPayload { + public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("sntnl")); - var exists = buf.readBoolean(); - if (!exists) { - return new MsgSentinelStatusUpdateAck(null); - } + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.optional(Sentinel.STREAM_CODEC).map( + opt -> opt.orElse(null), + Optional::ofNullable + ), MsgSentinelStatusUpdateAck::update, + MsgSentinelStatusUpdateAck::new + ); - var greater = buf.readBoolean(); - var origin = new Vec3(buf.readDouble(), buf.readDouble(), buf.readDouble()); - var dimension = ResourceKey.create(Registries.DIMENSION, buf.readResourceLocation()); - - var sentinel = new Sentinel(greater, origin, dimension); - return new MsgSentinelStatusUpdateAck(sentinel); - } - - public void serialize(FriendlyByteBuf buf) { - if (update == null) { - buf.writeBoolean(false); - return; - } - - buf.writeBoolean(true); - buf.writeBoolean(update.extendsRange()); - buf.writeDouble(update.position().x); - buf.writeDouble(update.position().y); - buf.writeDouble(update.position().z); - buf.writeResourceLocation(update.dimension().location()); + @Override + public CustomPacketPayload.Type type() { + return TYPE; } public static void handle(MsgSentinelStatusUpdateAck self) { - //noinspection Convert2Lambda - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setSentinel(player, self.update()); - } + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setSentinel(player, self.update()); } }); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java index 0969291d47..2d82273ca8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java @@ -1,25 +1,43 @@ package at.petrak.hexcasting.forge.recipe; +import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.common.crafting.AbstractIngredient; -import net.minecraftforge.common.crafting.IIngredientSerializer; +import net.neoforged.neoforge.common.crafting.ICustomIngredient; +import net.neoforged.neoforge.common.crafting.IngredientType; import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; import java.util.Arrays; import java.util.Objects; +import java.util.stream.Stream; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public class ForgeModConditionalIngredient extends AbstractIngredient { - public static final ResourceLocation ID = modLoc("mod_conditional"); +public class ForgeModConditionalIngredient implements ICustomIngredient { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( + Ingredient.CODEC.fieldOf("if_loaded").forGetter(ForgeModConditionalIngredient::getMain), + Codec.STRING.fieldOf("modid").forGetter(ForgeModConditionalIngredient::getModid), + Ingredient.CODEC.fieldOf("default").forGetter(ForgeModConditionalIngredient::getIfModLoaded) + ).apply(inst, ForgeModConditionalIngredient::of)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + Ingredient.CONTENTS_STREAM_CODEC, ForgeModConditionalIngredient::getMain, + ByteBufCodecs.STRING_UTF8, ForgeModConditionalIngredient::getModid, + Ingredient.CONTENTS_STREAM_CODEC, ForgeModConditionalIngredient::getIfModLoaded, + ForgeModConditionalIngredient::new + ); private final Ingredient main; private final String modid; @@ -28,14 +46,28 @@ public class ForgeModConditionalIngredient extends AbstractIngredient { private final Ingredient toUse; protected ForgeModConditionalIngredient(Ingredient main, String modid, Ingredient ifModLoaded) { - super(IXplatAbstractions.INSTANCE.isModPresent(modid) ? Arrays.stream(ifModLoaded.values) : Arrays.stream(main.values)); this.main = main; this.modid = modid; this.ifModLoaded = ifModLoaded; - this.toUse = IXplatAbstractions.INSTANCE.isModPresent(modid) ? ifModLoaded : main; } + public String getModid() { + return modid; + } + + public Ingredient getMain() { + return main; + } + + public Ingredient getIfModLoaded() { + return ifModLoaded; + } + + public Ingredient getToUse() { + return toUse; + } + /** * Creates a new ingredient matching the given stack */ @@ -49,66 +81,17 @@ public boolean test(@Nullable ItemStack input) { } @Override - public boolean isSimple() { - return toUse.isSimple(); + public Stream getItems() { + return Arrays.stream(toUse.getItems()); } @Override - public @NotNull JsonElement toJson() { - JsonObject json = new JsonObject(); - json.addProperty("type", Objects.toString(ID)); - json.add("default", main.toJson()); - json.addProperty("modid", modid); - json.add("if_loaded", ifModLoaded.toJson()); - return json; + public boolean isSimple() { + return toUse.isSimple(); } @Override - public @NotNull IIngredientSerializer getSerializer() { - return Serializer.INSTANCE; - } - - public static @NotNull Ingredient fromNetwork(FriendlyByteBuf friendlyByteBuf) { - return Ingredient.fromNetwork(friendlyByteBuf); // Just send the actual ingredient - } - - public static Ingredient fromJson(JsonObject object) { - if (object.has("type") && object.getAsJsonPrimitive("type").getAsString().equals(ID.toString())) { - if (object.has("modid") && IXplatAbstractions.INSTANCE.isModPresent(object.getAsJsonPrimitive("modid").getAsString())) { - try { - Ingredient ingredient = Ingredient.fromJson(object.get("if_loaded")); - if (!ingredient.isEmpty()) { - return ingredient; - } - } catch (JsonParseException e) { - // NO-OP - } - } - - return Ingredient.fromJson(object.get("default")); - } - - return Ingredient.of(); - } - - public static class Serializer implements IIngredientSerializer { - public static final Serializer INSTANCE = new Serializer(); - - @Override - public @NotNull Ingredient parse(@NotNull FriendlyByteBuf buffer) { - return fromNetwork(buffer); - } - - @Override - public @NotNull Ingredient parse(@NotNull JsonObject json) { - return fromJson(json); - } - - @Override - public void write(@NotNull FriendlyByteBuf buffer, @NotNull Ingredient ingredient) { - if (ingredient instanceof ForgeModConditionalIngredient conditionalIngredient) - conditionalIngredient.toUse.toNetwork(buffer); - // It shouldn't be possible to not be a ForgeModConditionalIngredient here - } + public IngredientType getType() { + return ForgeHexIngredientTypes.MOD_CONDITIONAL_INGREDIENT.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java index 434104aa9b..f0f77e1cce 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java @@ -4,42 +4,56 @@ import at.petrak.hexcasting.api.casting.iota.NullIota; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.lib.HexDataComponents; +import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.Unit; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.common.crafting.AbstractIngredient; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.common.crafting.IIngredientSerializer; -import net.minecraftforge.common.crafting.PartialNBTIngredient; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.common.crafting.ICustomIngredient; +import net.neoforged.neoforge.common.crafting.IngredientType; import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; import java.util.Objects; +import java.util.Optional; import java.util.stream.Stream; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public class ForgeUnsealedIngredient extends AbstractIngredient { - public static final ResourceLocation ID = modLoc("unsealed"); +public class ForgeUnsealedIngredient implements ICustomIngredient { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( + ItemStack.CODEC.fieldOf("stack").forGetter(ForgeUnsealedIngredient::getStack) + ).apply(inst, ForgeUnsealedIngredient::new)); + public static final StreamCodec STREAM_CODEC = ItemStack.STREAM_CODEC.map( + ForgeUnsealedIngredient::of, + ForgeUnsealedIngredient::getStack + ); private final ItemStack stack; private static ItemStack createStack(ItemStack base) { ItemStack newStack = base.copy(); - NBTHelper.putString(newStack, IotaHolderItem.TAG_OVERRIDE_VISUALLY, "any"); + base.set(HexDataComponents.VISUAL_OVERRIDE, Optional.empty()); return newStack; } protected ForgeUnsealedIngredient(ItemStack stack) { - super(Stream.of(new Ingredient.ItemValue(createStack(stack)))); this.stack = stack; } + public ItemStack getStack() { + return stack; + } + /** * Creates a new ingredient matching the given stack */ @@ -55,7 +69,7 @@ public boolean test(@Nullable ItemStack input) { if (this.stack.getItem() == input.getItem() && this.stack.getDamageValue() == input.getDamageValue()) { ADIotaHolder holder = IXplatAbstractions.INSTANCE.findDataHolder(this.stack); if (holder != null) { - return holder.readIotaTag() != null && holder.writeIota(new NullIota(), true); + return holder.readIota() != null && holder.writeIota(NullIota.INSTANCE, true); } } @@ -63,41 +77,17 @@ public boolean test(@Nullable ItemStack input) { } @Override - public boolean isSimple() { - return false; + public Stream getItems() { + return Stream.of(createStack(stack)); } @Override - public @NotNull IIngredientSerializer getSerializer() { - return ForgeUnsealedIngredient.Serializer.INSTANCE; + public boolean isSimple() { + return false; } @Override - public @NotNull JsonElement toJson() { - JsonObject json = new JsonObject(); - // TODO: should this be Partial or Strict - json.addProperty("type", Objects.toString(CraftingHelper.getID(PartialNBTIngredient.Serializer.INSTANCE))); - json.addProperty("item", Objects.toString(ForgeRegistries.ITEMS.getKey(stack.getItem()))); - return json; - } - - - public static class Serializer implements IIngredientSerializer { - public static final ForgeUnsealedIngredient.Serializer INSTANCE = new ForgeUnsealedIngredient.Serializer(); - - @Override - public @NotNull ForgeUnsealedIngredient parse(FriendlyByteBuf buffer) { - return new ForgeUnsealedIngredient(buffer.readItem()); - } - - @Override - public @NotNull ForgeUnsealedIngredient parse(@NotNull JsonObject json) { - return new ForgeUnsealedIngredient(CraftingHelper.getItemStack(json, true)); - } - - @Override - public void write(FriendlyByteBuf buffer, ForgeUnsealedIngredient ingredient) { - buffer.writeItem(ingredient.stack); - } + public IngredientType getType() { + return ForgeHexIngredientTypes.UNSEALED_INGREDIENT.get(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index d33c2654b0..9dc21cbd25 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -11,6 +11,7 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -18,11 +19,12 @@ import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import net.minecraft.world.phys.AABB; +import net.neoforged.neoforge.network.PacketDistributor; public class ForgeClientXplatImpl implements IClientXplatAbstractions { @Override - public void sendPacketToServer(IMessage packet) { - ForgePacketHandler.getNetwork().sendToServer(packet); + public void sendPacketToServer(CustomPacketPayload packet) { + PacketDistributor.sendToServer(packet); } @Override @@ -49,10 +51,10 @@ public void registerItemProperty(Item item, ResourceLocation id, ItemPropertyFun @Override public ClientCastingStack getClientCastingStack(Player player) { - var maybeCap = player.getCapability(HexCapabilities.CLIENT_CASTING_STACK).resolve(); - if (maybeCap.isEmpty()) + var clientCastingStack = player.getCapability(HexCapabilities.Entity.CLIENT_CASTING_STACK); + if (clientCastingStack == null) return new ClientCastingStack(); // lie - return maybeCap.get().get(); + return clientCastingStack.provide(); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index d39a71e857..90f6a2d320 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -22,15 +22,11 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; -import at.petrak.hexcasting.common.lib.hex.HexContinuationTypes; -import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import at.petrak.hexcasting.common.msgs.IMessage; +import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; -import at.petrak.hexcasting.forge.mixin.ForgeAccessorBuiltInRegistries; -import at.petrak.hexcasting.forge.network.ForgePacketHandler; import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; @@ -38,15 +34,16 @@ import at.petrak.hexcasting.xplat.IXplatAbstractions; import at.petrak.hexcasting.xplat.IXplatTags; import at.petrak.hexcasting.xplat.Platform; -import com.google.common.base.Suppliers; +import com.illusivesoulworks.caelus.api.CaelusApi; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -72,33 +69,30 @@ import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.Vec3; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.common.*; -import net.minecraftforge.common.loot.CanToolPerformAction; -import net.minecraftforge.common.util.FakePlayerFactory; -import net.minecraftforge.event.level.BlockEvent; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidType; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fml.ModContainer; -import net.minecraftforge.fml.ModList; -import net.minecraftforge.fml.loading.FMLLoader; -import net.minecraftforge.network.NetworkDirection; -import net.minecraftforge.network.PacketDistributor; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.ModList; +import net.neoforged.fml.loading.FMLLoader; +import net.neoforged.neoforge.common.CommonHooks; +import net.neoforged.neoforge.common.ItemAbilities; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.common.loot.CanItemPerformAbility; +import net.neoforged.neoforge.common.util.FakePlayerFactory; +import net.neoforged.neoforge.event.level.BlockEvent; +import net.neoforged.neoforge.fluids.FluidStack; +import net.neoforged.neoforge.fluids.FluidType; +import net.neoforged.neoforge.fluids.FluidUtil; +import net.neoforged.neoforge.fluids.capability.IFluidHandler; +import net.neoforged.neoforge.network.PacketDistributor; +import net.neoforged.neoforge.registries.RegistryBuilder; import org.jetbrains.annotations.Nullable; -import top.theillusivec4.caelus.api.CaelusApi; import virtuoel.pehkui.api.ScaleTypes; -import java.util.ArrayList; import java.util.List; import java.util.Optional; -import java.util.UUID; import java.util.function.BiFunction; -import java.util.function.Supplier; import static at.petrak.hexcasting.api.HexAPI.modLoc; -import static net.minecraftforge.fluids.capability.IFluidHandler.FluidAction.EXECUTE; public class ForgeXplatImpl implements IXplatAbstractions { @Override @@ -133,8 +127,7 @@ public void setBrainsweepAddlData(Mob mob) { mob.getPersistentData().putBoolean(TAG_BRAINSWEPT, true); if (mob.level() instanceof ServerLevel) { - ForgePacketHandler.getNetwork() - .send(PacketDistributor.TRACKING_ENTITY.with(() -> mob), MsgBrainsweepAck.of(mob)); + PacketDistributor.sendToPlayersTrackingEntity(mob, MsgBrainsweepAck.of(mob)); } } @@ -166,15 +159,17 @@ public void setAltiora(Player player, @Nullable AltioraAbility altiora) { } // The elytra ability is done with an event on fabric - var elytraing = CaelusApi.getInstance().getFlightAttribute(); + // TODO port: added null check, test if still works + var elytraing = CaelusApi.getInstance().getFallFlyingAttribute(); var inst = player.getAttributes().getInstance(elytraing); if (altiora != null) { - if (inst.getModifier(ALTIORA_ATTRIBUTE_ID) == null) { - inst.addTransientModifier(new AttributeModifier(ALTIORA_ATTRIBUTE_ID, "Altiora", 1.0, - AttributeModifier.Operation.ADDITION)); + if (inst != null && !inst.hasModifier(ALTIORA_ATTRIBUTE_ID)) { + inst.addTransientModifier(new AttributeModifier(ALTIORA_ATTRIBUTE_ID, 1.0, + AttributeModifier.Operation.ADD_VALUE)); } } else { - inst.removeModifier(ALTIORA_ATTRIBUTE_ID); + if(inst != null) + inst.removeModifier(ALTIORA_ATTRIBUTE_ID); } if (player instanceof ServerPlayer serverPlayer) { @@ -188,7 +183,7 @@ public void setAltiora(Player player, @Nullable AltioraAbility altiora) { CompoundTag tag = player.getPersistentData(); if (pigment != null) - tag.put(TAG_PIGMENT, pigment.serializeToNBT()); + tag.put(TAG_PIGMENT, FrozenPigment.CODEC.encodeStart(NbtOps.INSTANCE, pigment).getOrThrow()); else tag.remove(TAG_PIGMENT); @@ -220,16 +215,12 @@ public void setSentinel(Player player, @Nullable Sentinel sentinel) { @Override public void setStaffcastImage(ServerPlayer player, @Nullable CastingImage image) { - player.getPersistentData().put(TAG_VM, image == null ? new CompoundTag() : image.serializeToNbt()); + player.getPersistentData().put(TAG_VM, image == null ? new CompoundTag() : CastingImage.getCODEC().encodeStart(NbtOps.INSTANCE, image).getOrThrow()); } @Override public void setPatterns(ServerPlayer player, List patterns) { - var listTag = new ListTag(); - for (ResolvedPattern pattern : patterns) { - listTag.add(pattern.serializeToNBT()); - } - player.getPersistentData().put(TAG_PATTERNS, listTag); + player.getPersistentData().put(TAG_PATTERNS, ResolvedPattern.CODEC.listOf().encodeStart(NbtOps.INSTANCE, patterns).getOrThrow()); } @Override @@ -246,7 +237,7 @@ public FlightAbility getFlight(ServerPlayer player) { var origin = HexUtils.vecFromNBT(tag.getCompound(TAG_FLIGHT_ORIGIN)); var radius = tag.getDouble(TAG_FLIGHT_RADIUS); var dimension = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_FLIGHT_DIMENSION))); + ResourceLocation.parse(tag.getString(TAG_FLIGHT_DIMENSION))); return new FlightAbility(timeLeft, dimension, origin, radius); } return null; @@ -265,9 +256,10 @@ public AltioraAbility getAltiora(Player player) { @Override public FrozenPigment getPigment(Player player) { - return FrozenPigment.fromNBT(player.getPersistentData().getCompound(TAG_PIGMENT)); + return FrozenPigment.CODEC.parse(NbtOps.INSTANCE, player.getPersistentData().getCompound(TAG_PIGMENT)).getOrThrow(); } + //TODO port: replace with codec? @Override public Sentinel getSentinel(Player player) { CompoundTag tag = player.getPersistentData(); @@ -277,8 +269,7 @@ public Sentinel getSentinel(Player player) { } var extendsRange = tag.getBoolean(TAG_SENTINEL_GREATER); var position = HexUtils.vecFromNBT(tag.getCompound(TAG_SENTINEL_POSITION)); - var dimension = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_SENTINEL_DIMENSION))); + var dimension = ResourceKey.create(Registries.DIMENSION, ResourceLocation.parse(tag.getString(TAG_SENTINEL_DIMENSION))); return new Sentinel(extendsRange, position, dimension); } @@ -287,20 +278,12 @@ public Sentinel getSentinel(Player player) { public CastingVM getStaffcastVM(ServerPlayer player, InteractionHand hand) { // This is always from a staff because we don't need to load the VM when casting from item var ctx = new StaffCastEnv(player, hand); - return new CastingVM(CastingImage.loadFromNbt(player.getPersistentData().getCompound(TAG_VM), - player.serverLevel()), ctx); + return new CastingVM(CastingImage.getCODEC().parse(NbtOps.INSTANCE, player.getPersistentData().getCompound(TAG_VM)).getOrThrow(), ctx); } @Override public List getPatternsSavedInUi(ServerPlayer player) { - ListTag patternsTag = player.getPersistentData().getList(TAG_PATTERNS, Tag.TAG_COMPOUND); - - List patterns = new ArrayList<>(patternsTag.size()); - - for (int i = 0; i < patternsTag.size(); i++) { - patterns.add(ResolvedPattern.fromNBT(patternsTag.getCompound(i))); - } - return patterns; + return ResolvedPattern.CODEC.listOf().parse(NbtOps.INSTANCE, player.getPersistentData().getList(TAG_PATTERNS, Tag.TAG_COMPOUND)).getOrThrow(); } @Override @@ -312,77 +295,62 @@ public void clearCastingData(ServerPlayer player) { @Override public @Nullable ADMediaHolder findMediaHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.MEDIA).resolve(); - return maybeCap.orElse(null); - } - - @Override - public @Nullable ADMediaHolder findMediaHolder(ServerPlayer player) { - var maybeCap = player.getCapability(HexCapabilities.MEDIA).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.Item.MEDIA); } @Override public @Nullable ADIotaHolder findDataHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.IOTA).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.Item.IOTA); } @Override public @Nullable ADIotaHolder findDataHolder(Entity entity) { - var maybeCap = entity.getCapability(HexCapabilities.IOTA).resolve(); - return maybeCap.orElse(null); + return entity.getCapability(HexCapabilities.Entity.IOTA); } @Override public @Nullable ADHexHolder findHexHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.STORED_HEX).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.Item.STORED_HEX); } @Override public @Nullable ADVariantItem findVariantHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.VARIANT_ITEM).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.Item.VARIANT_ITEM); } @Override public boolean isPigment(ItemStack stack) { - return stack.getCapability(HexCapabilities.COLOR).isPresent(); + return stack.getCapability(HexCapabilities.Item.COLOR) != null; } @Override public ColorProvider getColorProvider(FrozenPigment pigment) { - var maybePigment = pigment.item().getCapability(HexCapabilities.COLOR).resolve(); - if (maybePigment.isPresent()) { - return maybePigment.get().provideColor(pigment.owner()); - } - return ColorProvider.MISSING; + var adPigment = pigment.item().getCapability(HexCapabilities.Item.COLOR); + return adPigment != null ? adPigment.provideColor(pigment.owner()) : ColorProvider.MISSING; } @Override - public void sendPacketToPlayer(ServerPlayer target, IMessage packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.PLAYER.with(() -> target), packet); + public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { + PacketDistributor.sendToPlayer(target, packet); } @Override - public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, IMessage packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.NEAR.with(() -> new PacketDistributor.TargetPoint( - pos.x, pos.y, pos.z, radius * radius, dimension.dimension() - )), packet); + public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet) { + PacketDistributor.sendToPlayersNear(dimension, null, pos.x, pos.y, pos.z, radius, packet); } @Override - public void sendPacketTracking(Entity entity, IMessage packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.TRACKING_ENTITY.with(() -> entity), packet); + public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { + PacketDistributor.sendToPlayersTrackingEntity(entity, packet); } @Override - public Packet toVanillaClientboundPacket(IMessage message) { + public Packet toVanillaClientboundPacket(CustomPacketPayload message) { + // TODO port: test cast //noinspection unchecked - return (Packet) ForgePacketHandler.getNetwork().toVanillaPacket(message, NetworkDirection.PLAY_TO_CLIENT); + return (Packet) (Object) message.toVanillaClientbound(); } @Override @@ -393,19 +361,19 @@ public BlockEntityType createBlockEntityType(BiFuncti @Override public boolean tryPlaceFluid(Level level, InteractionHand hand, BlockPos pos, Fluid fluid) { - Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP).resolve(); + Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP); return handler.isPresent() && - handler.get().fill(new FluidStack(fluid, FluidType.BUCKET_VOLUME), EXECUTE) > 0; + handler.get().fill(new FluidStack(fluid, FluidType.BUCKET_VOLUME), IFluidHandler.FluidAction.EXECUTE) > 0; } @Override public boolean drainAllFluid(Level level, BlockPos pos) { - Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP).resolve(); + Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP); if (handler.isPresent()) { boolean any = false; IFluidHandler pool = handler.get(); for (int i = 0; i < pool.getTanks(); i++) { - if (!pool.drain(pool.getFluidInTank(i), EXECUTE).isEmpty()) { + if (!pool.drain(pool.getFluidInTank(i), IFluidHandler.FluidAction.EXECUTE).isEmpty()) { any = true; } } @@ -416,12 +384,13 @@ public boolean drainAllFluid(Level level, BlockPos pos) { @Override public Ingredient getUnsealedIngredient(ItemStack stack) { - return ForgeUnsealedIngredient.of(stack); + return ForgeUnsealedIngredient.of(stack).toVanilla(); } @Override public boolean isCorrectTierForDrops(Tier tier, BlockState bs) { - return !bs.requiresCorrectToolForDrops() || TierSortingRegistry.isCorrectTierForDrops(tier, bs); + // TODO port: check tag + return !bs.is(HexTags.Blocks.HEX_UNBREAKABLE); } @Override @@ -432,12 +401,12 @@ public Item.Properties addEquipSlotFabric(EquipmentSlot slot) { private static final IXplatTags TAGS = new IXplatTags() { @Override public TagKey amethystDust() { - return HexTags.Items.create(new ResourceLocation("forge", "dusts/amethyst")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("forge", "dusts/amethyst")); } @Override public TagKey gems() { - return HexTags.Items.create(new ResourceLocation("forge", "gems")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("forge", "gems")); } }; @@ -448,7 +417,7 @@ public IXplatTags tags() { @Override public LootItemCondition.Builder isShearsCondition() { - return CanToolPerformAction.canToolPerformAction(ToolActions.SHEARS_DIG); + return CanItemPerformAbility.canItemPerformAbility(ItemAbilities.SHEARS_DIG); } @Override @@ -463,70 +432,83 @@ public String getModName(String namespace) { return namespace; } - private static final Supplier> ACTION_REGISTRY = Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerSimple( - HexRegistries.ACTION, null) - ); - private static final Supplier>> SPECIAL_HANDLER_REGISTRY = - Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerSimple( - HexRegistries.SPECIAL_HANDLER, null) - ); - private static final Supplier>> IOTA_TYPE_REGISTRY = Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerDefaulted( - HexRegistries.IOTA_TYPE, - modLoc("null").toString(), registry -> HexIotaTypes.NULL) - ); - private static final Supplier> ARITHMETIC_REGISTRY = Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerSimple( - HexRegistries.ARITHMETIC, null) - ); - private static final Supplier>> CONTINUATION_TYPE_REGISTRY = Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerDefaulted( - HexRegistries.CONTINUATION_TYPE, - modLoc("end").toString(), registry -> HexContinuationTypes.END) - ); - private static final Supplier> EVAL_SOUND_REGISTRY = Suppliers.memoize(() -> - ForgeAccessorBuiltInRegistries.hex$registerDefaulted( - HexRegistries.EVAL_SOUND, - modLoc("nothing").toString(), registry -> HexEvalSounds.NOTHING) - ); + private static final Registry ACTION_REGISTRY = new RegistryBuilder<>(HexRegistries.ACTION) + .sync(true) + .create(); + private static final Registry> SPECIAL_HANDLER_REGISTRY = new RegistryBuilder<>(HexRegistries.SPECIAL_HANDLER) + .sync(true) + .create(); + private static final Registry> IOTA_TYPE_REGISTRY = new RegistryBuilder<>(HexRegistries.IOTA_TYPE) + .sync(true) + .defaultKey(modLoc("null")) + .create(); + + private static final Registry ARITHMETIC_REGISTRY = new RegistryBuilder<>(HexRegistries.ARITHMETIC) + .sync(true) + .create(); + + private static final Registry> CONTINUATION_TYPE_REGISTRY = new RegistryBuilder<>(HexRegistries.CONTINUATION_TYPE) + .sync(true) + .defaultKey(modLoc("end")) + .create(); + private static final Registry EVAL_SOUND_REGISTRY = new RegistryBuilder<>(HexRegistries.EVAL_SOUND) + .sync(true) + .defaultKey(modLoc("nothing")) + .create(); + private static final Registry> STATE_INGREDIENT_REGISTRY = new RegistryBuilder<>(HexRegistries.STATE_INGREDIENT) + .sync(true) + .defaultKey(modLoc("none")) + .create(); + private static final Registry> BRAINSWEEPEE_INGREDIENT_REGISTRY = new RegistryBuilder<>(HexRegistries.BRAINSWEEPEE_INGREDIENT) + .sync(true) + .defaultKey(modLoc("none")) + .create(); @Override public Registry getActionRegistry() { - return ACTION_REGISTRY.get(); + return ACTION_REGISTRY; } @Override public Registry> getSpecialHandlerRegistry() { - return SPECIAL_HANDLER_REGISTRY.get(); + return SPECIAL_HANDLER_REGISTRY; } @Override public Registry> getIotaTypeRegistry() { - return IOTA_TYPE_REGISTRY.get(); + return IOTA_TYPE_REGISTRY; } @Override public Registry getArithmeticRegistry() { - return ARITHMETIC_REGISTRY.get(); + return ARITHMETIC_REGISTRY; } @Override public Registry> getContinuationTypeRegistry() { - return CONTINUATION_TYPE_REGISTRY.get(); + return CONTINUATION_TYPE_REGISTRY; } @Override public Registry getEvalSoundRegistry() { - return EVAL_SOUND_REGISTRY.get(); + return EVAL_SOUND_REGISTRY; + } + + @Override + public Registry> getStateIngredientRegistry() { + return STATE_INGREDIENT_REGISTRY; + } + + @Override + public Registry> getBrainsweepeeIngredientRegistry() { + return BRAINSWEEPEE_INGREDIENT_REGISTRY; } @Override public boolean isBreakingAllowed(ServerLevel world, BlockPos pos, BlockState state, @Nullable Player player) { if (player == null) player = FakePlayerFactory.get(world, HEXCASTING); - return !MinecraftForge.EVENT_BUS.post(new BlockEvent.BreakEvent(world, pos, state, player)); + return !NeoForge.EVENT_BUS.post(new BlockEvent.BreakEvent(world, pos, state, player)).isCanceled(); } @Override @@ -535,7 +517,7 @@ public boolean isPlacingAllowed(ServerLevel world, BlockPos pos, ItemStack block player = FakePlayerFactory.get(world, HEXCASTING); ItemStack cached = player.getMainHandItem(); player.setItemInHand(InteractionHand.MAIN_HAND, blockStack.copy()); - var evt = ForgeHooks.onRightClickBlock(player, InteractionHand.MAIN_HAND, pos, + var evt = CommonHooks.onRightClickBlock(player, InteractionHand.MAIN_HAND, pos, new BlockHitResult(Vec3.atCenterOf(pos), Direction.DOWN, pos, true)); player.setItemInHand(InteractionHand.MAIN_HAND, cached); return !evt.isCanceled(); @@ -583,7 +565,7 @@ public void setScale(Entity e, float scale) { public static final String TAG_ALTIORA_ALLOWED = "hexcasting:altiora_allowed"; public static final String TAG_ALTIORA_GRACE = "hexcasting:altiora_grace_period"; - public static final UUID ALTIORA_ATTRIBUTE_ID = UUID.fromString("91897c79-3ebb-468c-a265-40418ed01c41"); + public static final ResourceLocation ALTIORA_ATTRIBUTE_ID = modLoc("altiora"); public static final String TAG_VM = "hexcasting:spell_harness"; public static final String TAG_PATTERNS = "hexcasting:spell_patterns"; diff --git a/gradle.properties b/gradle.properties index 6d7a8871a4..637f71e108 100644 --- a/gradle.properties +++ b/gradle.properties @@ -12,6 +12,8 @@ minecraftVersion=1.21.1 kotlinVersion=2.0.21 modVersion=0.12.0-devel +fabric_loader_version=0.16.14 + # this is the version published to modrinth/cf i swear # haha not anymore it's from mavenLocal paucalVersion=0.7.2 From c9274b931d67dba652f9684d0f94755fe37bff9f Mon Sep 17 00:00:00 2001 From: slava110 Date: Wed, 18 Jun 2025 05:25:16 +0300 Subject: [PATCH 03/51] Fixing errors made during port --- .../hexcasting/api/casting/ActionUtils.kt | 16 ++-- .../api/casting/eval/CastingEnvironment.java | 2 +- .../api/casting/eval/env/CircleCastEnv.java | 2 +- .../casting/eval/env/PlayerBasedCastEnv.java | 8 +- .../hexcasting/api/casting/iota/Iota.java | 18 +++- .../api/client/ClientCastingStack.kt | 5 -- .../hexcasting/client/gui/GuiSpellcasting.kt | 4 +- .../client/render/HexAdditionalRenderers.java | 2 +- .../hexcasting/client/render/RenderLib.kt | 1 - .../actions/queryentity/OpCanEntityHexFly.kt | 2 +- .../common/casting/actions/spells/OpFlight.kt | 2 +- .../casting/actions/spells/OpMakeBattery.kt | 2 +- .../actions/spells/OpMakePackagedSpell.kt | 2 +- .../casting/actions/spells/OpPotionEffect.kt | 2 +- .../casting/actions/spells/OpRecharge.kt | 2 +- .../casting/actions/spells/great/OpAltiora.kt | 2 +- .../actions/spells/great/OpBrainsweep.kt | 2 +- .../hexcasting/common/items/ItemLens.java | 18 ++-- .../hexcasting/common/items/ItemStaff.java | 4 +- .../common/items/storage/ItemAbacus.java | 6 +- .../common/items/storage/ItemSpellbook.java | 83 ++++++++++++++----- .../hexcasting/common/lib/HexAttributes.java | 55 ++++-------- .../hexcasting/common/lib/HexBlocks.java | 2 +- .../common/lib/HexCreativeTabs.java | 5 +- .../hexcasting/common/lib/HexMobEffects.java | 4 +- .../hexcasting/common/lib/HexPotions.java | 8 +- .../hexcasting/common/lib/HexRegistries.java | 2 +- .../common/msgs/MsgOpenSpellGuiS2C.java | 8 +- .../common/recipe/BrainsweepRecipe.java | 9 +- .../brainsweep/BrainsweepeeIngredients.java | 7 -- .../{ => state}/StateIngredient.java | 4 +- .../{ => state}/StateIngredientBlock.java | 2 +- .../StateIngredientBlockState.java | 2 +- .../{ => state}/StateIngredientBlocks.java | 6 +- .../{ => state}/StateIngredientTag.java | 5 +- .../StateIngredientTagExcluding.java | 2 +- .../{ => state}/StateIngredientType.java | 2 +- .../{ => state}/StateIngredients.java | 2 +- .../datagen/recipe/HexplatRecipes.java | 24 ++---- .../builders/BrainsweepRecipeBuilder.java | 4 +- .../patchouli/CustomComponentTooltip.java | 1 + .../hexcasting/xplat/IXplatAbstractions.java | 8 +- .../hexcasting/xplat/IXplatRegister.java | 21 +++++ Common/src/main/resources/hexplat.mixins.json | 5 +- .../forge/ForgeHexClientInitializer.java | 9 ++ .../hexcasting/forge/ForgeHexInitializer.java | 40 ++++----- .../forge/cap/ForgeCapabilityHandler.java | 7 -- .../hexcasting/forge/cap/HexCapabilities.java | 4 - .../cap/adimpl/CapClientCastingStack.java | 27 ------ .../forge/lib/ForgeHexAttachments.java | 23 +++++ .../forge/lib/ForgeHexIngredientTypes.java | 7 ++ .../forge/xplat/ForgeClientXplatImpl.java | 9 +- .../hexcasting/forge/xplat/ForgeRegister.java | 31 +++++++ .../forge/xplat/ForgeXplatImpl.java | 11 ++- .../resources/hexcasting_forge.mixins.json | 1 - 55 files changed, 298 insertions(+), 244 deletions(-) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredient.java (86%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientBlock.java (97%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientBlockState.java (98%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientBlocks.java (94%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientTag.java (94%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientTagExcluding.java (98%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredientType.java (83%) rename Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/{ => state}/StateIngredients.java (98%) create mode 100644 Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java delete mode 100644 Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java create mode 100644 Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexAttachments.java create mode 100644 Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeRegister.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt index fc8efbb916..eaa9cc1e75 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt @@ -99,40 +99,40 @@ fun List.getBool(idx: Int, argc: Int = 0): Boolean { // Helpers -fun List.getItemEntity(idx: Int, argc: Int = 0): ItemEntity { +fun List.getItemEntity(level: ServerLevel, idx: Int, argc: Int = 0): ItemEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = TODO("replace entity references") + val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) if (e is ItemEntity) return e } throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity.item") } -fun List.getPlayer(idx: Int, argc: Int = 0): ServerPlayer { +fun List.getPlayer(level: ServerLevel, idx: Int, argc: Int = 0): ServerPlayer { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = TODO("replace entity references") + val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) if (e is ServerPlayer) return e } throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity.player") } -fun List.getMob(idx: Int, argc: Int = 0): Mob { +fun List.getMob(level: ServerLevel, idx: Int, argc: Int = 0): Mob { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = TODO("replace entity references") + val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) if (e is Mob) return e } throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity.mob") } -fun List.getLivingEntityButNotArmorStand(idx: Int, argc: Int = 0): LivingEntity { +fun List.getLivingEntityButNotArmorStand(level: ServerLevel, idx: Int, argc: Int = 0): LivingEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = TODO("replace entity references") + val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) if (e is LivingEntity && e !is ArmorStand) return e } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java index 2365a922ff..e74d123f19 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java @@ -250,7 +250,7 @@ public boolean isEnlightened() { */ public long extractMedia(long cost, boolean simulate) { if (this.getCastingEntity() != null){ - cost = (long) (cost * this.getCastingEntity().getAttributeValue(Holder.direct(HexAttributes.MEDIA_CONSUMPTION_MODIFIER))); + cost = (long) (cost * this.getCastingEntity().getAttributeValue(HexAttributes.MEDIA_CONSUMPTION_MODIFIER)); } for (var extractMediaComponent : preMediaExtract) cost = extractMediaComponent.onExtractMedia(cost, simulate); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java index f6059a9779..2b0d914839 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java @@ -133,7 +133,7 @@ public long extractMediaEnvironment(long cost, boolean simulate) { public boolean isVecInRangeEnvironment(Vec3 vec) { var caster = this.execState.getCaster(this.world); if (caster != null) { - double sentinelRadius = caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); + double sentinelRadius = caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); if (vec.distanceToSqr(caster.position()) <= caster.getBbHeight() * caster.getBbHeight()) { return true; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java index 433fc267ba..f143bf58c5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java @@ -49,8 +49,8 @@ protected PlayerBasedCastEnv(ServerPlayer caster, InteractionHand castingHand) { super(caster.serverLevel()); this.caster = caster; this.castingHand = castingHand; - this.ambitRadius = caster.getAttributeValue(Holder.direct(HexAttributes.AMBIT_RADIUS)); - this.sentinelRadius = caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); + this.ambitRadius = caster.getAttributeValue(HexAttributes.AMBIT_RADIUS); + this.sentinelRadius = caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); } @Override @@ -73,11 +73,11 @@ public void postExecution(CastResult result) { } } if (this.caster != null){ - double ambitAttribute = this.caster.getAttributeValue(Holder.direct(HexAttributes.AMBIT_RADIUS)); + double ambitAttribute = this.caster.getAttributeValue(HexAttributes.AMBIT_RADIUS); if (this.ambitRadius != ambitAttribute){ this.ambitRadius = ambitAttribute; } - double sentinelAttribute = this.caster.getAttributeValue(Holder.direct(HexAttributes.SENTINEL_RADIUS)); + double sentinelAttribute = this.caster.getAttributeValue(HexAttributes.SENTINEL_RADIUS); if (this.sentinelRadius != sentinelAttribute){ this.sentinelRadius = sentinelAttribute; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java index 287ea80391..1bc2a893a4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java @@ -11,15 +11,22 @@ import at.petrak.hexcasting.api.casting.mishaps.MishapUnescapedValue; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.Codec; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; +import net.minecraft.nbt.NbtOps; +import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.ComponentSerialization; +import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.FormattedCharSequence; +import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.Objects; import java.util.function.Supplier; public abstract class Iota { @@ -124,9 +131,14 @@ public static boolean tolerates(Iota a, Iota b) { return a.toleratesOther(b) || b.toleratesOther(a); } - /** - * Require overriding hashCode - */ @Override public abstract int hashCode(); + + @Override + public boolean equals(Object o) { + if(o instanceof Iota io) { + return tolerates(this, io); + } + return false; + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt b/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt index 3d825e44df..249adc092b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/client/ClientCastingStack.kt @@ -58,9 +58,4 @@ class ClientCastingStack { patterns.removeAll(toRemove) toRemove.clear() } - - fun interface Provider { - - fun provide(): ClientCastingStack - } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt index 8e3aee4052..b45e4923ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt @@ -125,7 +125,7 @@ class GuiSpellcasting constructor( val player = minecraft.player if (player != null) { val heldItem = player.getItemInHand(handOpenedWith) - if (heldItem.isEmpty || !heldItem.`is`(HexTags.Items.STAVES) || player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0) + if (heldItem.isEmpty || !heldItem.`is`(HexTags.Items.STAVES) || player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0) closeForReal() } } @@ -495,7 +495,7 @@ class GuiSpellcasting constructor( /** Distance between adjacent hex centers */ fun hexSize(): Float { - val scaleModifier = Minecraft.getInstance().player!!.getAttributeValue(Holder.direct(HexAttributes.GRID_ZOOM)) + val scaleModifier = Minecraft.getInstance().player!!.getAttributeValue(HexAttributes.GRID_ZOOM) // Originally, we allowed 32 dots across. Assuming a 1920x1080 screen this allowed like 500-odd area. // Let's be generous and give them 512. diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java index a78383bbc5..29def93978 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java @@ -159,7 +159,7 @@ private static void tryRenderScryingLensOverlay(GuiGraphics graphics, float part return; } - if (player.getAttributeValue(Holder.direct(HexAttributes.SCRY_SIGHT)) <= 0.0 || player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0) + if (player.getAttributeValue(HexAttributes.SCRY_SIGHT) <= 0.0 || player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0) return; var hitRes = mc.hitResult; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt index 73f9a3f44a..cc01757023 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt @@ -456,5 +456,4 @@ fun renderQuad( .setColor(color) buf.addVertex(mat, x + w, y, 0f) .setColor(color) - // TODO port: test rendering works } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpCanEntityHexFly.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpCanEntityHexFly.kt index 8e79bd84da..82d8202fbc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpCanEntityHexFly.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/queryentity/OpCanEntityHexFly.kt @@ -11,7 +11,7 @@ object OpCanEntityHexFly : ConstMediaAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): List { - val player = args.getPlayer(0, argc) + val player = args.getPlayer(env.world, 0, argc) env.assertEntityInRange(player) val flightAbility = IXplatAbstractions.INSTANCE.getFlight(player) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpFlight.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpFlight.kt index 9258cc059e..82d5e87da3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpFlight.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpFlight.kt @@ -31,7 +31,7 @@ class OpFlight(val type: Type) : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val target = args.getPlayer(0, argc) + val target = args.getPlayer(env.world, 0, argc) val theArg = args.getPositiveDouble(1, argc) env.assertEntityInRange(target) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakeBattery.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakeBattery.kt index 5e86b23504..c21d8f5578 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakeBattery.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakeBattery.kt @@ -26,7 +26,7 @@ object OpMakeBattery : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val entity = args.getItemEntity(0, argc) + val entity = args.getItemEntity(env.world, 0, argc) val (handStack, hand) = env.getHeldItemToOperateOn { it.`is`(HexTags.Items.PHIAL_BASE) } ?: throw MishapBadOffhandItem.of(ItemStack.EMPTY.copy(), "bottle") // TODO: hack diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt index c62d816844..11b8290ed1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt @@ -29,7 +29,7 @@ class OpMakePackagedSpell(val isValid: Predicate, val expectedTypeDes args: List, env: CastingEnvironment ): SpellAction.Result { - val entity = args.getItemEntity(0, argc) + val entity = args.getItemEntity(env.world, 0, argc) val patterns = args.getList(1, argc).toList() val (handStack) = env.getHeldItemToOperateOn { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt index 543053cfeb..fcca24ddf9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpPotionEffect.kt @@ -22,7 +22,7 @@ class OpPotionEffect( args: List, env: CastingEnvironment ): SpellAction.Result { - val target = args.getLivingEntityButNotArmorStand(0, argc) + val target = args.getLivingEntityButNotArmorStand(env.world, 0, argc) val duration = args.getPositiveDouble(1, argc) val potency = if (this.allowPotency) args.getDoubleBetween(2, 1.0, 127.0, argc) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpRecharge.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpRecharge.kt index 0b7fcb6dfd..b45191bc32 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpRecharge.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpRecharge.kt @@ -21,7 +21,7 @@ object OpRecharge : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val entity = args.getItemEntity(0, argc) + val entity = args.getItemEntity(env.world, 0, argc) val (handStack) = env.getHeldItemToOperateOn { val media = IXplatAbstractions.INSTANCE.findMediaHolder(it) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpAltiora.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpAltiora.kt index 515518cadc..8d71bfba57 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpAltiora.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpAltiora.kt @@ -20,7 +20,7 @@ object OpAltiora : SpellAction { override val argc = 1 override fun execute(args: List, env: CastingEnvironment): SpellAction.Result { - val target = args.getPlayer(0, argc) + val target = args.getPlayer(env.world, 0, argc) env.assertEntityInRange(target) return SpellAction.Result( diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt index 5166795c0a..04dd9e80e1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpBrainsweep.kt @@ -35,7 +35,7 @@ object OpBrainsweep : SpellAction { args: List, env: CastingEnvironment ): SpellAction.Result { - val sacrifice = args.getMob(0, argc) + val sacrifice = args.getMob(env.world, 0, argc) val vecPos = args.getVec3(1, argc) val pos = BlockPos.containing(vecPos) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java index cce4e2bf9d..ec8e4249b5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java @@ -44,23 +44,23 @@ public ItemLens(Properties pProperties) { } @Override - public ItemAttributeModifiers getDefaultAttributeModifiers() { + public ItemAttributeModifiers getDefaultAttributeModifiers(ItemStack stack) { return ItemAttributeModifiers.builder() - .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.HEAD) - .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.MAINHAND) - .add(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM, EquipmentSlotGroup.OFFHAND) + .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.HEAD) + .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.MAINHAND) + .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.OFFHAND) - .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.HEAD) - .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.MAINHAND) - .add(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT, EquipmentSlotGroup.OFFHAND) + .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.HEAD) + .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.MAINHAND) + .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.OFFHAND) .build(); } @Override public Multimap, AttributeModifier> getHexBaubleAttrs(ItemStack stack) { HashMultimap, AttributeModifier> out = HashMultimap.create(); - out.put(Holder.direct(HexAttributes.GRID_ZOOM), GRID_ZOOM); - out.put(Holder.direct(HexAttributes.SCRY_SIGHT), SCRY_SIGHT); + out.put(HexAttributes.GRID_ZOOM, GRID_ZOOM); + out.put(HexAttributes.SCRY_SIGHT, SCRY_SIGHT); return out; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index c9d4a6a42c..7fc41bdf3b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -28,7 +28,7 @@ public ItemStaff(Properties pProperties) { @Override public InteractionResultHolder use(Level world, Player player, InteractionHand hand) { - if (player.getAttributeValue(Holder.direct(HexAttributes.FEEBLE_MIND)) > 0){ + if (player.getAttributeValue(HexAttributes.FEEBLE_MIND) > 0){ return InteractionResultHolder.fail(player.getItemInHand(hand)); } if (player.isShiftKeyDown()) { @@ -50,8 +50,6 @@ public InteractionResultHolder use(Level world, Player player, Intera CompoundTag ravenmind = null; if(userData.contains(HexAPI.RAVENMIND_USERDATA)) ravenmind = userData.getCompound(HexAPI.RAVENMIND_USERDATA); - else - ravenmind = new CompoundTag(); IXplatAbstractions.INSTANCE.sendPacketToPlayer(serverPlayer, new MsgOpenSpellGuiS2C(hand, patterns, vm.getImage().getStack(), ravenmind, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index 0bfb1bd2f1..76b3571686 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -21,12 +21,16 @@ import java.util.List; public class ItemAbacus extends Item implements IotaHolderItem { - public static final String TAG_VALUE = "value"; public ItemAbacus(Properties pProperties) { super(pProperties); } + @Override + public @Nullable Iota readIota(ItemStack stack) { + return new DoubleIota(stack.getOrDefault(HexDataComponents.ABACUS_VALUE, 0.0)); + } + @Override public boolean writeable(ItemStack stack) { return false; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java index 9949f9b184..600a9314c8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java @@ -22,6 +22,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.stream.Stream; import static at.petrak.hexcasting.common.items.storage.ItemFocus.NUM_VARIANTS; @@ -89,13 +90,30 @@ public void inventoryTick(ItemStack stack, Level level, Entity pEntity, int pSlo int shiftedIdx = Math.max(1, index); String nameKey = String.valueOf(shiftedIdx); - var names = stack.getOrDefault(HexDataComponents.PAGE_NAMES, new HashMap()); - if (stack.has(DataComponents.CUSTOM_NAME)) { - names.put(nameKey, stack.getHoverName()); - stack.set(HexDataComponents.PAGE_NAMES, names); - } else { - names.remove(nameKey); - stack.set(HexDataComponents.PAGE_NAMES, names); + + var customName = stack.get(DataComponents.CUSTOM_NAME); + var savedNames = stack.get(HexDataComponents.PAGE_NAMES); + + if(customName != null) { + if(savedNames != null) { + if(!savedNames.containsKey(nameKey) || !savedNames.get(nameKey).equals(customName)) { + var mutNames = new HashMap<>(savedNames); + mutNames.put(nameKey, customName); + stack.set(HexDataComponents.PAGE_NAMES, mutNames); + } + } else { + var mutNames = new HashMap(); + mutNames.put(nameKey, customName); + stack.set(HexDataComponents.PAGE_NAMES, mutNames); + } + } else if(savedNames != null) { + var mutNames = new HashMap<>(savedNames); + mutNames.remove(nameKey); + if(mutNames.isEmpty()) { + stack.remove(HexDataComponents.PAGE_NAMES); + } else { + stack.set(HexDataComponents.PAGE_NAMES, mutNames); + } } } @@ -138,19 +156,30 @@ public void writeDatum(ItemStack stack, Iota datum) { var pages = stack.get(HexDataComponents.PAGES); if (pages != null) { + var pagesMut = new HashMap<>(pages); + if (datum == null) { - pages.remove(key); - stack.set(HexDataComponents.PAGES, pages); + pagesMut.remove(key); var seals = stack.get(HexDataComponents.PAGE_SEALS); - if(seals != null) - seals.remove(key); + if(seals != null) { + var sealsMut = new HashMap<>(seals); + + sealsMut.remove(key); + + if(sealsMut.isEmpty()) { + stack.remove(HexDataComponents.PAGE_SEALS); + } else { + stack.set(HexDataComponents.PAGE_SEALS, sealsMut); + } + } } else { - pages.put(key, datum); - stack.set(HexDataComponents.PAGES, pages); + pagesMut.put(key, datum); } - if (pages.isEmpty()) { + if (pagesMut.isEmpty()) { stack.remove(HexDataComponents.PAGES); + } else { + stack.set(HexDataComponents.PAGES, pagesMut); } } else if (datum != null) { var map = new HashMap(); @@ -158,8 +187,16 @@ public void writeDatum(ItemStack stack, Iota datum) { stack.set(HexDataComponents.PAGES, map); } else { var seals = stack.get(HexDataComponents.PAGE_SEALS); - if(seals != null) - seals.remove(key); + if(seals != null) { + var sealsMut = new HashMap<>(seals); + sealsMut.remove(key); + + if(sealsMut.isEmpty()) { + stack.remove(HexDataComponents.PAGE_SEALS); + } else { + stack.set(HexDataComponents.PAGE_SEALS, sealsMut); + } + } } } @@ -183,20 +220,22 @@ public static void setSealed(ItemStack stack, boolean sealed) { int index = getPage(stack, 1); String nameKey = String.valueOf(index); - var names = stack.getOrDefault(HexDataComponents.PAGE_SEALS, new HashMap()); + + var seals = stack.get(HexDataComponents.PAGE_SEALS); + + var sealsMut = seals != null ? new HashMap<>(seals) : new HashMap(); if (!sealed) { - names.remove(nameKey); + sealsMut.remove(nameKey); } else { - names.put(nameKey, true); + sealsMut.put(nameKey, true); } - if (names.isEmpty()) { + if (sealsMut.isEmpty()) { stack.remove(HexDataComponents.PAGE_SEALS); } else { - stack.set(HexDataComponents.PAGE_SEALS, names); + stack.set(HexDataComponents.PAGE_SEALS, sealsMut); } - } public static boolean isSealed(ItemStack stack) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java index 097c305ad9..707ec6544c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexAttributes.java @@ -1,62 +1,43 @@ package at.petrak.hexcasting.common.lib; -import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.eval.env.PlayerBasedCastEnv; -import net.minecraft.resources.ResourceLocation; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.hexcasting.xplat.IXplatRegister; +import net.minecraft.core.Holder; +import net.minecraft.core.registries.Registries; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.RangedAttribute; -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.function.BiConsumer; +import static at.petrak.hexcasting.api.HexAPI.MOD_ID; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - -/** - * On forge: these are setup in ForgeHexInit - * On fabric: it's a mixin - */ public class HexAttributes { - public static void register(BiConsumer r) { - for (var e : ATTRIBUTES.entrySet()) { - r.accept(e.getValue(), e.getKey()); - } - } + private static final IXplatRegister REGISTER = IXplatAbstractions.INSTANCE + .createRegistar(Registries.ATTRIBUTE); - private static final Map ATTRIBUTES = new LinkedHashMap<>(); - - private static final String MOD_ID = HexAPI.MOD_ID; + public static void register() { + REGISTER.registerAll(); + } - public static final Attribute GRID_ZOOM = make("grid_zoom", new RangedAttribute( - MOD_ID + ".attributes.grid_zoom", 1.0, 0.5, 4.0)).setSyncable(true); + public static final Holder GRID_ZOOM = REGISTER.registerHolder("grid_zoom", () -> new RangedAttribute( + MOD_ID + ".attributes.grid_zoom", 1.0, 0.5, 4.0).setSyncable(true)); /** * Whether you have the lens overlay when looking at something. 0 = no, > 0 = yes. */ - public static final Attribute SCRY_SIGHT = make("scry_sight", new RangedAttribute( - MOD_ID + ".attributes.scry_sight", 0.0, 0.0, 1.0)).setSyncable(true); + public static final Holder SCRY_SIGHT = REGISTER.registerHolder("scry_sight", () -> new RangedAttribute( + MOD_ID + ".attributes.scry_sight", 0.0, 0.0, 1.0).setSyncable(true)); //whether the player is allowed to use staffcasting and scrying lenses - public static final Attribute FEEBLE_MIND = make("feeble_mind", new RangedAttribute( + public static final Holder FEEBLE_MIND = REGISTER.registerHolder("feeble_mind", () -> new RangedAttribute( MOD_ID + ".attributes.feeble_mind", 0.0, 0.0, 1.0).setSyncable(true)); //a multiplier to adjust media consumption across the board - public static final Attribute MEDIA_CONSUMPTION_MODIFIER = make("media_consumption", new RangedAttribute( + public static final Holder MEDIA_CONSUMPTION_MODIFIER = REGISTER.registerHolder("media_consumption", () -> new RangedAttribute( MOD_ID + ".attributes.media_consumption", 1.0, 0.0, Double.MAX_VALUE).setSyncable(true)); - public static final Attribute AMBIT_RADIUS = make("ambit_radius", new RangedAttribute( + public static final Holder AMBIT_RADIUS = REGISTER.registerHolder("ambit_radius", () -> new RangedAttribute( MOD_ID + ".attributes.ambit_radius", PlayerBasedCastEnv.DEFAULT_AMBIT_RADIUS, 0.0, Double.MAX_VALUE).setSyncable(true)); - public static final Attribute SENTINEL_RADIUS = make("sentinel_radius", new RangedAttribute( + public static final Holder SENTINEL_RADIUS = REGISTER.registerHolder("sentinel_radius", () -> new RangedAttribute( MOD_ID + ".attributes.sentinel_radius", PlayerBasedCastEnv.DEFAULT_SENTINEL_RADIUS, 0.0, Double.MAX_VALUE).setSyncable(true)); - - - - private static T make(String id, T attr) { - var old = ATTRIBUTES.put(modLoc(id), attr); - if (old != null) { - throw new IllegalArgumentException("Typo? Duplicate id " + id); - } - return attr; - } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index 3f5e4e3f8e..86ae60c3fe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -190,7 +190,7 @@ private static BlockBehaviour.Properties quenched() { public static final BlockAkashicBookshelf AKASHIC_BOOKSHELF = blockItem("akashic_bookshelf", new BlockAkashicBookshelf(akashicWoodyHard() .lightLevel(bs -> (bs.getValue(BlockAkashicBookshelf.HAS_BOOKS)) ? 4 : 0))); - public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_ligature", + public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_connector", new BlockAkashicLigature(akashicWoodyHard().lightLevel(bs -> 4))); public static final BlockQuenchedAllay QUENCHED_ALLAY = blockItem("quenched_allay", new BlockQuenchedAllay(quenched())); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java index 07c1a08bcd..58a521e32d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java @@ -21,11 +21,10 @@ public static void registerCreativeTabs(BiConsumer TABS = new LinkedHashMap<>(); - public static final CreativeModeTab HEX = register("hexcasting", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 7) + public static final CreativeModeTab HEX = register("hexcasting", CreativeModeTab.builder() .icon(() -> new ItemStack(HexItems.SPELLBOOK))); - // TODO port: check creative tab icon display - public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 7) + public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder() .icon(() -> new ItemStack(HexItems.SCROLL_LARGE))); private static CreativeModeTab register(String name, CreativeModeTab.Builder tabBuilder) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index 2f476ef1ef..d9a3f6cf1b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -25,11 +25,11 @@ public static void register(BiConsumer r) { public static final MobEffect ENLARGE_GRID = make("enlarge_grid", new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff)) - .addAttributeModifier(Holder.direct(HexAttributes.GRID_ZOOM), HexAPI.modLoc("enlarge_grid"), + .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("enlarge_grid"), 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); public static final MobEffect SHRINK_GRID = make("shrink_grid", new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) - .addAttributeModifier(Holder.direct(HexAttributes.GRID_ZOOM), HexAPI.modLoc("shrink_grid"), + .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("shrink_grid"), -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java index 91145ee691..11ed7f7dcb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java @@ -5,10 +5,10 @@ import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.item.Items; import net.minecraft.world.item.alchemy.Potion; import net.minecraft.world.item.alchemy.PotionBrewing; import net.minecraft.world.item.alchemy.Potions; -import net.minecraft.world.item.Items; import java.util.LinkedHashMap; import java.util.Map; @@ -33,6 +33,12 @@ public class HexPotions { public static final Potion SHRINK_GRID_STRONG = make("shrink_grid_strong", new Potion("shrink_grid_strong", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 1800, 1))); + public static void registerPotions(BiConsumer r) { + for (var e : POTIONS.entrySet()) { + r.accept(e.getValue(), e.getKey()); + } + } + public static void addRecipes(PotionBrewing.Builder builder, RegistryAccess registryAccess) { var potionRegistry = registryAccess.registryOrThrow(Registries.POTION); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java index be0851967a..9ea3f26bec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java @@ -6,7 +6,7 @@ import at.petrak.hexcasting.api.casting.eval.sideeffects.EvalSound; import at.petrak.hexcasting.api.casting.eval.vm.ContinuationFrame; import at.petrak.hexcasting.api.casting.iota.IotaType; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index 5b5d77fdcb..f50ed7d26d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -17,8 +17,10 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.util.ExtraCodecs; import net.minecraft.world.InteractionHand; +import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.Optional; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -27,6 +29,7 @@ */ public record MsgOpenSpellGuiS2C(InteractionHand hand, List patterns, List stack, + @Nullable CompoundTag ravenmind, int parenCount ) @@ -40,7 +43,10 @@ public record MsgOpenSpellGuiS2C(InteractionHand hand, List pat ), MsgOpenSpellGuiS2C::hand, ResolvedPattern.STREAM_CODEC.apply(ByteBufCodecs.list()), MsgOpenSpellGuiS2C::patterns, IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), MsgOpenSpellGuiS2C::stack, - ByteBufCodecs.COMPOUND_TAG, MsgOpenSpellGuiS2C::ravenmind, + ByteBufCodecs.optional(ByteBufCodecs.COMPOUND_TAG).map( + opt -> opt.orElse(null), + Optional::ofNullable + ), MsgOpenSpellGuiS2C::ravenmind, ByteBufCodecs.VAR_INT, MsgOpenSpellGuiS2C::parenCount, MsgOpenSpellGuiS2C::new ); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index e989dcbe6e..e6e00fb988 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,23 +1,18 @@ package at.petrak.hexcasting.common.recipe; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; -import com.google.gson.JsonObject; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.HolderLookup; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.GsonHelper; import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.ai.Brain; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeInput; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java index d1e4674fe7..7ad77853aa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java @@ -2,12 +2,9 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.lib.HexRegistries; -import at.petrak.hexcasting.common.recipe.ingredient.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonObject; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; @@ -19,14 +16,10 @@ import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.npc.VillagerProfession; import net.minecraft.world.entity.npc.VillagerType; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.Random; import java.util.function.BiConsumer; public class BrainsweepeeIngredients { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredient.java similarity index 86% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredient.java index ff86ad8923..464e703d09 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredient.java @@ -1,8 +1,6 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; -import com.google.gson.JsonObject; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.state.BlockState; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java similarity index 97% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java index c3b0f9aae1..cfb1209cd5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlock.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java @@ -1,4 +1,4 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java similarity index 98% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java index 61066ff647..7a01d09e47 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlockState.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java @@ -1,4 +1,4 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java similarity index 94% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java index d203fd8fc9..4f828e2f13 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java @@ -1,14 +1,10 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.google.common.collect.ImmutableSet; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java similarity index 94% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java index 8e1d4f3c43..dac2e84b3b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTag.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java @@ -1,15 +1,12 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.google.common.collect.ImmutableSet; -import com.google.gson.JsonObject; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.Holder; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java similarity index 98% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java index 3a98e24de3..2a08f605be 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientTagExcluding.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java @@ -1,4 +1,4 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientType.java similarity index 83% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientType.java index 33d0ecfd8b..da8a3ed7b7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredientType.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientType.java @@ -1,4 +1,4 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import com.mojang.serialization.MapCodec; import net.minecraft.network.RegistryFriendlyByteBuf; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java similarity index 98% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java rename to Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java index 6c39c20f24..9c7ed400de 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/StateIngredients.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java @@ -1,4 +1,4 @@ -package at.petrak.hexcasting.common.recipe.ingredient; +package at.petrak.hexcasting.common.recipe.ingredient.state; import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.lib.HexRegistries; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index 3952657bfe..3e04446993 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -10,26 +10,21 @@ import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.recipe.SealThingsRecipe; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.EntityTypeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.VillagerIngredient; import at.petrak.hexcasting.datagen.HexAdvancements; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; import at.petrak.hexcasting.datagen.IXplatIngredients; import at.petrak.hexcasting.datagen.recipe.builders.BrainsweepRecipeBuilder; -import at.petrak.hexcasting.datagen.recipe.builders.CompatIngredientValue; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.advancements.Criterion; -import net.minecraft.advancements.CriterionTriggerInstance; import net.minecraft.advancements.critereon.InventoryChangeTrigger; import net.minecraft.advancements.critereon.ItemPredicate; -import net.minecraft.advancements.critereon.MinMaxBounds; import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.*; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.packs.resources.Resource; import net.minecraft.tags.ItemTags; import net.minecraft.tags.TagKey; import net.minecraft.world.entity.EntityType; @@ -48,7 +43,6 @@ import java.util.Optional; import java.util.concurrent.CompletableFuture; import java.util.function.Function; -import java.util.function.Supplier; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -444,50 +438,50 @@ public void buildRecipes(RecipeOutput recipes) { new VillagerIngredient(null, null, 3), Blocks.BUDDING_AMETHYST.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/budding_amethyst")); + .save(recipes, modLoc("budding_amethyst")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.TOOLSMITH, null, 2), HexBlocks.IMPETUS_RIGHTCLICK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/impetus_rightclick")); + .save(recipes, modLoc("impetus_rightclick")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.FLETCHER, null, 2), HexBlocks.IMPETUS_LOOK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/impetus_look")); + .save(recipes, modLoc("impetus_look")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.CLERIC, null, 2), HexBlocks.IMPETUS_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/impetus_storedplayer")); + .save(recipes, modLoc("impetus_storedplayer")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.MASON, null, 1), HexBlocks.DIRECTRIX_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/directrix_redstone")); + .save(recipes, modLoc("directrix_redstone")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.SHEPHERD, null, 1), HexBlocks.DIRECTRIX_BOOLEAN.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/directrix_boolean")); + .save(recipes, modLoc("directrix_boolean")); new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.AKASHIC_LIGATURE), new VillagerIngredient(VillagerProfession.LIBRARIAN, null, 5), HexBlocks.AKASHIC_RECORD.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/akashic_record")); + .save(recipes, modLoc("akashic_record")); // Temporary tests new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), new EntityTypeIngredient(EntityType.ALLAY), HexBlocks.QUENCHED_ALLAY.defaultBlockState(), MediaConstants.CRYSTAL_UNIT) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) - .save(recipes, modLoc("brainsweep/quench_allay")); + .save(recipes, modLoc("quench_allay")); // Create compat /*this.conditions.apply(new CreateCrushingRecipeBuilder() diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java index 8b243f229d..d1ffa3df38 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java @@ -1,7 +1,7 @@ package at.petrak.hexcasting.datagen.recipe.builders; import at.petrak.hexcasting.common.recipe.BrainsweepRecipe; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; import net.minecraft.advancements.Advancement; import net.minecraft.advancements.AdvancementRequirements; @@ -59,6 +59,6 @@ public void save(RecipeOutput recipeOutput, ResourceLocation id) { this.criteria.forEach(advancement::addCriterion); var recipe = new BrainsweepRecipe(blockIn, entityIn, mediaCost, result); - recipeOutput.accept(id.withPrefix("recipes/brainsweep/"), recipe, advancement.build(id.withPrefix("recipes/"))); + recipeOutput.accept(id.withPrefix("brainsweep/"), recipe, advancement.build(id.withPrefix("recipes/brainsweep/"))); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java index 4741f0c466..37e02355f0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java @@ -45,5 +45,6 @@ public void render(GuiGraphics graphics, IComponentRenderContext context, float @Override public void onVariablesAvailable(UnaryOperator lookup, HolderLookup.Provider registries) { tooltipVar = lookup.apply(tooltipReference); + this.registries = registries; } } diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index d0bb2c0469..fc95829842 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -19,18 +19,16 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.msgs.IMessage; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.common.ClientCommonPacketListener; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; @@ -192,6 +190,8 @@ BlockEntityType createBlockEntityType(BiFunction IXplatRegister createRegistar(ResourceKey> registryKey); + // interop PehkuiInterop.ApiAbstraction getPehkuiApi(); diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java new file mode 100644 index 0000000000..76d9091fd6 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java @@ -0,0 +1,21 @@ +package at.petrak.hexcasting.xplat; + +import net.minecraft.core.Holder; + +import java.util.function.Supplier; + +/** + * Handles registration + * @param + */ +public interface IXplatRegister { + + Supplier register(String id, Supplier provider); + + Holder registerHolder(String id, Supplier provider); + + /** + * Call from mod initializer to actually register all entries in this register + */ + void registerAll(); +} \ No newline at end of file diff --git a/Common/src/main/resources/hexplat.mixins.json b/Common/src/main/resources/hexplat.mixins.json index bbc3836c0f..39a6da0bd1 100644 --- a/Common/src/main/resources/hexplat.mixins.json +++ b/Common/src/main/resources/hexplat.mixins.json @@ -12,14 +12,11 @@ "MixinWanderingTrader", "MixinWitch", "accessor.AccessorAbstractArrow", - "accessor.AccessorDamageSource", "accessor.AccessorEntity", "accessor.AccessorLivingEntity", "accessor.AccessorLootTable", - "accessor.AccessorPotionBrewing", "accessor.AccessorUseOnContext", - "accessor.AccessorVillager", - "accessor.CriteriaTriggersAccessor" + "accessor.AccessorVillager" ], "client": [ "accessor.client.AccessorBlockEntityRenderDispatcher", diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index ebfa19737b..f159d4969a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.forge; +import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.client.ClientTickCounter; import at.petrak.hexcasting.client.RegisterClientStuff; import at.petrak.hexcasting.client.ShiftScrollListener; @@ -11,6 +12,7 @@ import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.lib.HexParticles; import at.petrak.hexcasting.common.misc.PatternTooltip; +import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; import at.petrak.hexcasting.interop.HexInterop; import net.minecraft.client.Minecraft; import net.minecraft.client.color.block.BlockColors; @@ -27,6 +29,7 @@ import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; import net.neoforged.neoforge.client.event.*; import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.tick.PlayerTickEvent; import java.io.IOException; import java.util.function.Function; @@ -78,6 +81,12 @@ public static void clientInit(FMLClientSetupEvent evt) { e.setCanceled(cancel); }); + evBus.addListener((PlayerTickEvent.Pre ev) -> { + if(!ev.getEntity().isDeadOrDying()) { + ev.getEntity().getData(ForgeHexAttachments.CLIENT_CASTING_STACK).tick(); + } + }); + HexInterop.clientInit(); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index f598754ff5..53128fdf48 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -13,30 +13,23 @@ import at.petrak.hexcasting.common.items.ItemJewelerHammer; import at.petrak.hexcasting.common.lib.*; import at.petrak.hexcasting.common.lib.hex.*; -import at.petrak.hexcasting.common.misc.AkashicTreeGrower; -import at.petrak.hexcasting.common.misc.BrainsweepingEvents; -import at.petrak.hexcasting.common.misc.PlayerPositionRecorder; -import at.petrak.hexcasting.common.misc.RegisterMisc; +import at.petrak.hexcasting.common.misc.*; import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.ForgeCapabilityHandler; -import at.petrak.hexcasting.forge.cap.adimpl.CapClientCastingStack; import at.petrak.hexcasting.forge.datagen.ForgeHexDataGenerators; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.forge.interop.curios.CuriosRenderers; import at.petrak.hexcasting.forge.lib.ForgeHexArgumentTypeRegistry; +import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.forge.lib.ForgeHexLootMods; import at.petrak.hexcasting.forge.network.ForgePacketHandler; import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; -import at.petrak.hexcasting.forge.recipe.ForgeModConditionalIngredient; -import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.core.Holder; -import net.minecraft.core.MappedRegistry; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; @@ -47,15 +40,12 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.Mob; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.BlockSetType; import net.neoforged.api.distmarker.Dist; import net.neoforged.bus.api.IEventBus; import net.neoforged.fml.ModContainer; import net.neoforged.fml.ModList; -import net.neoforged.fml.ModLoadingContext; import net.neoforged.fml.common.Mod; import net.neoforged.fml.config.ModConfig; import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; @@ -133,8 +123,10 @@ private static void initRegistry() { bind(Registries.RECIPE_TYPE, HexRecipeStuffRegistry::registerTypes); bind(Registries.ENTITY_TYPE, HexEntities::registerEntities); - bind(Registries.ATTRIBUTE, HexAttributes::register); + // Testing out new registration system + HexAttributes.register(); bind(Registries.MOB_EFFECT, HexMobEffects::register); + bind(Registries.POTION, HexPotions::registerPotions); bind(Registries.PARTICLE_TYPE, HexParticles::registerParticles); bind(Registries.TRIGGER_TYPE, HexAdvancementTriggers::registerTriggers); @@ -151,6 +143,7 @@ private static void initRegistry() { ForgeHexArgumentTypeRegistry.ARGUMENT_TYPES.register(getModEventBus()); ForgeHexLootMods.REGISTRY.register(getModEventBus()); ForgeHexIngredientTypes.INGREDIENT_TYPES.register(getModEventBus()); + ForgeHexAttachments.register(); RegisterMisc.register(); } @@ -160,9 +153,6 @@ private static void bind(ResourceKey> registry, Consum getModEventBus().addListener((RegisterEvent event) -> { if (registry.equals(event.getRegistryKey())) { source.accept((t, rl) -> { - if(t == null) - System.out.println("OBJ " + rl + " is null! (" + registry + ")"); - event.register(registry, rl, () -> t); }); } @@ -208,8 +198,6 @@ private static void initListeners() { } }); - evBus.register(CapClientCastingStack.class); - evBus.addListener((PlayerInteractEvent.EntityInteract evt) -> { var res = BrainsweepingEvents.interactWithBrainswept( evt.getEntity(), evt.getLevel(), evt.getHand(), evt.getTarget(), null); @@ -283,12 +271,12 @@ private static void initListeners() { evBus.register(CapSyncers.class); modBus.addListener((EntityAttributeModificationEvent e) -> { - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.GRID_ZOOM)); - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.SCRY_SIGHT)); - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.FEEBLE_MIND)); - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.MEDIA_CONSUMPTION_MODIFIER)); - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.AMBIT_RADIUS)); - e.add(EntityType.PLAYER, Holder.direct(HexAttributes.SENTINEL_RADIUS)); + e.add(EntityType.PLAYER, HexAttributes.GRID_ZOOM); + e.add(EntityType.PLAYER, HexAttributes.SCRY_SIGHT); + e.add(EntityType.PLAYER, HexAttributes.FEEBLE_MIND); + e.add(EntityType.PLAYER, HexAttributes.MEDIA_CONSUMPTION_MODIFIER); + e.add(EntityType.PLAYER, HexAttributes.AMBIT_RADIUS); + e.add(EntityType.PLAYER, HexAttributes.SENTINEL_RADIUS); }); if (ModList.get().isLoaded(HexInterop.Forge.CURIOS_API_ID)) { @@ -299,7 +287,7 @@ private static void initListeners() { } // aaaauughhg - private static IEventBus getModEventBus() { + public static IEventBus getModEventBus() { return KotlinModLoadingContext.Companion.get().getKEventBus(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java index d29734c196..fe9bdc42ff 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java @@ -46,7 +46,6 @@ public static void registerCaps(RegisterCapabilitiesEvent evt) { CuriosApiInterop.registerCap(evt, item); } - // TODO port: amethyst is static, holders aren't. Modifiable media amount. UPD: I don't remember why I left that comment evt.registerItem( HexCapabilities.Item.MEDIA, (stack, ctx) -> new CapStaticMediaHolder(HexConfig.common()::dustMediaAmount, ADMediaHolder.AMETHYST_DUST_PRIORITY, stack), @@ -95,13 +94,7 @@ public static void registerCaps(RegisterCapabilitiesEvent evt) { HexEntities.WALL_SCROLL, (ent, ctx) -> new ItemDelegatingEntityIotaHolder.ToWallScroll(ent) ); - evt.registerEntity( - HexCapabilities.Entity.CLIENT_CASTING_STACK, - EntityType.PLAYER, - (player, ctx) -> new CapClientCastingStack(player, new ClientCastingStack()) - ); - // TODO port: maybe use tag or impetus registry for(Block block : BuiltInRegistries.BLOCK) { if(block instanceof BlockAbstractImpetus imBlock) { evt.registerBlockEntity( diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java index 89121c0f8d..7856cabc5c 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java @@ -1,12 +1,9 @@ package at.petrak.hexcasting.forge.cap; import at.petrak.hexcasting.api.addldata.*; -import at.petrak.hexcasting.api.client.ClientCastingStack; import net.neoforged.neoforge.capabilities.EntityCapability; import net.neoforged.neoforge.capabilities.ItemCapability; -import java.util.function.Supplier; - import static at.petrak.hexcasting.api.HexAPI.modLoc; public final class HexCapabilities { @@ -25,6 +22,5 @@ public static final class Entity { public static final EntityCapability STORED_HEX = EntityCapability.createVoid(modLoc("hex_holder"), ADHexHolder.class); public static final EntityCapability VARIANT_ITEM = EntityCapability.createVoid(modLoc("variant"), ADVariantItem.class); public static final EntityCapability COLOR = EntityCapability.createVoid(modLoc("color"), ADPigment.class); - public static final EntityCapability CLIENT_CASTING_STACK = EntityCapability.createVoid(modLoc("client_casting"), ClientCastingStack.Provider.class); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java deleted file mode 100644 index 3895a724aa..0000000000 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java +++ /dev/null @@ -1,27 +0,0 @@ -package at.petrak.hexcasting.forge.cap.adimpl; - -import at.petrak.hexcasting.api.client.ClientCastingStack; -import at.petrak.hexcasting.forge.cap.HexCapabilities; -import net.minecraft.world.entity.player.Player; -import net.neoforged.bus.api.SubscribeEvent; -import net.neoforged.neoforge.event.tick.PlayerTickEvent; -import org.jetbrains.annotations.NotNull; - -import java.util.function.Supplier; - -public record CapClientCastingStack(Player player, ClientCastingStack clientCastingStack) implements ClientCastingStack.Provider { - - @Override - public @NotNull ClientCastingStack provide() { - return clientCastingStack; - } - - @SubscribeEvent - public static void tickClientPlayer(PlayerTickEvent.Pre evt) { - if (evt.getEntity().level().isClientSide() && !evt.getEntity().isDeadOrDying()) { - var clientStack = evt.getEntity().getCapability(HexCapabilities.Entity.CLIENT_CASTING_STACK); - if(clientStack != null) - clientStack.provide().tick(); - } - } -} diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexAttachments.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexAttachments.java new file mode 100644 index 0000000000..ce096c70bd --- /dev/null +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexAttachments.java @@ -0,0 +1,23 @@ +package at.petrak.hexcasting.forge.lib; + +import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.api.client.ClientCastingStack; +import at.petrak.hexcasting.forge.ForgeHexInitializer; +import net.neoforged.neoforge.attachment.AttachmentType; +import net.neoforged.neoforge.registries.DeferredRegister; +import net.neoforged.neoforge.registries.NeoForgeRegistries; + +import java.util.function.Supplier; + +public class ForgeHexAttachments { + private static final DeferredRegister> ATTACHMENT_TYPES = DeferredRegister.create(NeoForgeRegistries.ATTACHMENT_TYPES, HexAPI.MOD_ID); + + // TODO port: maybe make client-side only? + public static final Supplier> CLIENT_CASTING_STACK = ATTACHMENT_TYPES.register( + "casting_stack", () -> AttachmentType.builder(ClientCastingStack::new).build() + ); + + public static void register() { + ATTACHMENT_TYPES.register(ForgeHexInitializer.getModEventBus()); + } +} diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java index 4338e18751..e4361c7bce 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java @@ -1,9 +1,16 @@ package at.petrak.hexcasting.forge.lib; import at.petrak.hexcasting.api.HexAPI; +import at.petrak.hexcasting.forge.loot.ForgeHexAmethystLootMod; +import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; +import at.petrak.hexcasting.forge.loot.ForgeHexLoreLootMod; +import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; import at.petrak.hexcasting.forge.recipe.ForgeModConditionalIngredient; import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; +import com.mojang.serialization.MapCodec; import net.neoforged.neoforge.common.crafting.IngredientType; +import net.neoforged.neoforge.common.loot.IGlobalLootModifier; +import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; import net.neoforged.neoforge.registries.NeoForgeRegistries; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index 9dc21cbd25..0419b3c49a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -1,9 +1,7 @@ package at.petrak.hexcasting.forge.xplat; import at.petrak.hexcasting.api.client.ClientCastingStack; -import at.petrak.hexcasting.common.msgs.IMessage; -import at.petrak.hexcasting.forge.cap.HexCapabilities; -import at.petrak.hexcasting.forge.network.ForgePacketHandler; +import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.entity.EntityRendererProvider; @@ -51,10 +49,7 @@ public void registerItemProperty(Item item, ResourceLocation id, ItemPropertyFun @Override public ClientCastingStack getClientCastingStack(Player player) { - var clientCastingStack = player.getCapability(HexCapabilities.Entity.CLIENT_CASTING_STACK); - if (clientCastingStack == null) - return new ClientCastingStack(); // lie - return clientCastingStack.provide(); + return player.getData(ForgeHexAttachments.CLIENT_CASTING_STACK); } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeRegister.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeRegister.java new file mode 100644 index 0000000000..b4c7dd9f0e --- /dev/null +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeRegister.java @@ -0,0 +1,31 @@ +package at.petrak.hexcasting.forge.xplat; + +import at.petrak.hexcasting.forge.ForgeHexInitializer; +import at.petrak.hexcasting.xplat.IXplatRegister; +import net.minecraft.core.Holder; +import net.neoforged.neoforge.registries.DeferredRegister; + +import java.util.function.Supplier; + +public class ForgeRegister implements IXplatRegister { + private final DeferredRegister register; + + public ForgeRegister(DeferredRegister register) { + this.register = register; + } + + @Override + public void registerAll() { + register.register(ForgeHexInitializer.getModEventBus()); + } + + @Override + public Supplier register(String id, Supplier provider) { + return register.register(id, provider); + } + + @Override + public Holder registerHolder(String id, Supplier provider) { + return register.register(id, provider); + } +} diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index 90f6a2d320..9410eecac3 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.forge.xplat; +import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.addldata.ADHexHolder; import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.addldata.ADMediaHolder; @@ -22,7 +23,7 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.HexCapabilities; @@ -32,6 +33,7 @@ import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.hexcasting.xplat.IXplatRegister; import at.petrak.hexcasting.xplat.IXplatTags; import at.petrak.hexcasting.xplat.Platform; import com.illusivesoulworks.caelus.api.CaelusApi; @@ -84,6 +86,7 @@ import net.neoforged.neoforge.fluids.FluidUtil; import net.neoforged.neoforge.fluids.capability.IFluidHandler; import net.neoforged.neoforge.network.PacketDistributor; +import net.neoforged.neoforge.registries.DeferredRegister; import net.neoforged.neoforge.registries.RegistryBuilder; import org.jetbrains.annotations.Nullable; import virtuoel.pehkui.api.ScaleTypes; @@ -95,6 +98,12 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgeXplatImpl implements IXplatAbstractions { + + @Override + public IXplatRegister createRegistar(ResourceKey> registryKey) { + return new ForgeRegister<>(DeferredRegister.create(registryKey, HexAPI.MOD_ID)); + } + @Override public Platform platform() { return Platform.FORGE; diff --git a/Neoforge/src/main/resources/hexcasting_forge.mixins.json b/Neoforge/src/main/resources/hexcasting_forge.mixins.json index 3a50c75493..d05981caff 100644 --- a/Neoforge/src/main/resources/hexcasting_forge.mixins.json +++ b/Neoforge/src/main/resources/hexcasting_forge.mixins.json @@ -5,7 +5,6 @@ "refmap": "hexcasting.mixins.refmap.json", "package": "at.petrak.hexcasting.forge.mixin", "mixins": [ - "ForgeAccessorBuiltInRegistries", "ForgeMixinCursedRecipeSerializerBase", "ForgeMixinTagsProvider" ], From 9f1e2f0f32fd70b58917d5c433123707cd9d9cde Mon Sep 17 00:00:00 2001 From: slava110 Date: Wed, 18 Jun 2025 06:05:22 +0300 Subject: [PATCH 04/51] Bumped Java version on workflow from 17 to 21 --- .github/workflows/pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index c34eed7e43..c30d27f7d3 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -11,7 +11,7 @@ on: branches: main env: - JAVA_VERSION: '17.0.1' + JAVA_VERSION: '21.0.5' jobs: build: From 87e9ab1b4b50ea461e043e361f60c69378106536 Mon Sep 17 00:00:00 2001 From: slava110 Date: Wed, 18 Jun 2025 06:46:38 +0300 Subject: [PATCH 05/51] Fix resources --- .../thehexbook/en_us/entries/greatwork/akashiclib.json | 2 +- .../thehexbook/en_us/entries/items/ancient_cyphers.json | 2 +- .../thehexbook/en_us/entries/items/hexcasting.json | 2 +- .../thehexbook/en_us/entries/items/phials.json | 2 +- .../thehexbook/en_us/entries/items/potions.json | 4 ++-- .../en_us/entries/patterns/great_spells/make_battery.json | 2 +- .../en_us/entries/patterns/great_spells/zeniths.json | 2 +- .../en_us/entries/patterns/spells/hexcasting.json | 2 +- .../thehexbook/en_us/entries/patterns/spells/nadirs.json | 2 +- .../{advancements => advancement}/grant_patchi_book.json | 0 .../amethyst_shard_reducer.json | 0 .../{loot_tables => loot_table}/grant_patchi_book.json | 0 .../data/hexcasting/{recipes => recipe}/patchi_book.json | 0 .../{entity_types => entity_type}/cannot_teleport.json | 0 .../{entity_types => entity_type}/sticky_teleporters.json | 0 .../tags/{items => item}/cluster_max_harvestables.json | 0 .../resources/data/curios/tags/{items => item}/head.json | 0 .../resources/data/hexcasting/curios/entities/head.json | 8 ++++++++ 18 files changed, 18 insertions(+), 10 deletions(-) rename Common/src/main/resources/data/hexcasting/{advancements => advancement}/grant_patchi_book.json (100%) rename Common/src/main/resources/data/hexcasting/{item_modifiers => item_modifier}/amethyst_shard_reducer.json (100%) rename Common/src/main/resources/data/hexcasting/{loot_tables => loot_table}/grant_patchi_book.json (100%) rename Common/src/main/resources/data/hexcasting/{recipes => recipe}/patchi_book.json (100%) rename Common/src/main/resources/data/hexcasting/tags/{entity_types => entity_type}/cannot_teleport.json (100%) rename Common/src/main/resources/data/hexcasting/tags/{entity_types => entity_type}/sticky_teleporters.json (100%) rename Common/src/main/resources/data/minecraft/tags/{items => item}/cluster_max_harvestables.json (100%) rename Neoforge/src/main/resources/data/curios/tags/{items => item}/head.json (100%) create mode 100644 Neoforge/src/main/resources/data/hexcasting/curios/entities/head.json diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/greatwork/akashiclib.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/greatwork/akashiclib.json index 25cfde8ead..ad63b36001 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/greatwork/akashiclib.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/greatwork/akashiclib.json @@ -22,7 +22,7 @@ { "type": "patchouli:crafting", "recipe": "hexcasting:akashic_bookshelf", - "recipe2": "hexcasting:akashic_connector" + "recipe2": "hexcasting:akashic_ligature" }, { "type": "patchouli:text", diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json index e3fc78bda9..9a000fea58 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json @@ -12,7 +12,7 @@ { "type": "patchouli:spotlight", "text": "hexcasting.page.ancient_cyphers.2", - "item": "hexcasting:ancient_cypher{variant:0},hexcasting:ancient_cypher{variant:1},hexcasting:ancient_cypher{variant:2},hexcasting:ancient_cypher{variant:3},hexcasting:ancient_cypher{variant:4},hexcasting:ancient_cypher{variant:5},hexcasting:ancient_cypher{variant:6},hexcasting:ancient_cypher{variant:7}" + "item": "hexcasting:ancient_cypher[hexcasting:variant=0],hexcasting:ancient_cypher[hexcasting:variant=1],hexcasting:ancient_cypher[hexcasting:variant=2],hexcasting:ancient_cypher[hexcasting:variant=3],hexcasting:ancient_cypher[hexcasting:variant=4],hexcasting:ancient_cypher[hexcasting:variant=5],hexcasting:ancient_cypher[hexcasting:variant=6],hexcasting:ancient_cypher[hexcasting:variant=7]" } ] } \ No newline at end of file diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/hexcasting.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/hexcasting.json index b28262d6b8..03e8990b3a 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/hexcasting.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/hexcasting.json @@ -1,7 +1,7 @@ { "name": "hexcasting.entry.hexcasting", "category": "hexcasting:items", - "icon": "hexcasting:artifact{patterns:[]}", + "icon": "hexcasting:artifact", "sortnum": 6, "advancement": "hexcasting:root", "pages": [ diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/phials.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/phials.json index 0f930d1ec8..7e264464fe 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/phials.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/phials.json @@ -21,7 +21,7 @@ { "type": "patchouli:spotlight", "text": "hexcasting.page.phials.desc", - "item": "hexcasting:battery{\"hexcasting:media\":640000,\"hexcasting:start_media\":640000}", + "item": "hexcasting:battery[hexcasting:media=640000,hexcasting:start_media=640000]", "link_recipe": true } ] diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/potions.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/potions.json index a0db5dd70b..fcc3d2ff9f 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/potions.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/potions.json @@ -1,7 +1,7 @@ { "name": "hexcasting.entry.potions", "category": "hexcasting:items", - "icon": "minecraft:potion{Potion:\"hexcasting:enlarge_grid\"}", + "icon": "minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:enlarge_grid\"}]", "sortnum": 8, "advancement": "hexcasting:root", "read_by_default": true, @@ -14,7 +14,7 @@ "type": "patchouli:spotlight", "title": "hexcasting.page.potions.effects.header", "text": "hexcasting.page.potions.2", - "item": "minecraft:potion{Potion:\"hexcasting:enlarge_grid\"},minecraft:potion{Potion:\"hexcasting:enlarge_grid_long\"},minecraft:potion{Potion:\"hexcasting:enlarge_grid_strong\"},minecraft:potion{Potion:\"hexcasting:shrink_grid\"},minecraft:potion{Potion:\"hexcasting:shrink_grid_long\"},minecraft:potion{Potion:\"hexcasting:shrink_grid_strong\"}" + "item": "minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:enlarge_grid\"}],minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:enlarge_grid_long\"}],minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:enlarge_grid_strong\"}],minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:shrink_grid\"}],minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:shrink_grid_long\"}],minecraft:potion[minecraft:potion_contents={potion:\"hexcasting:shrink_grid_strong\"}]" } ] } diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/make_battery.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/make_battery.json index 2ffd387b21..94c15f5bd1 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/make_battery.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/make_battery.json @@ -1,7 +1,7 @@ { "name": "hexcasting.action.hexcasting:craft/battery", "category": "hexcasting:patterns/great_spells", - "icon": "hexcasting:battery{media:10000,max_media:10000}", + "icon": "hexcasting:battery[hexcasting:media=10000,hexcasting:start_media=10000]", "sortnum": 6, "advancement": "hexcasting:root", "read_by_default": true, diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/zeniths.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/zeniths.json index b5899a67c3..476fe9083b 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/zeniths.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/great_spells/zeniths.json @@ -1,7 +1,7 @@ { "name": "hexcasting.entry.zeniths", "category": "hexcasting:patterns/great_spells", - "icon": "minecraft:potion{Potion:'minecraft:regeneration'}", + "icon": "minecraft:potion[minecraft:potion_contents={potion:\"minecraft:regeneration\"}]", "advancement": "hexcasting:root", "sortnum": 4, "read_by_default": true, diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/hexcasting.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/hexcasting.json index 06cd64b47f..fbbdbc5d40 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/hexcasting.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/hexcasting.json @@ -1,7 +1,7 @@ { "name": "hexcasting.entry.hexcasting_spell", "category": "hexcasting:patterns/spells", - "icon": "hexcasting:artifact{patterns:[]}", + "icon": "hexcasting:artifact", "sortnum": 3, "advancement": "hexcasting:root", "read_by_default": true, diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/nadirs.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/nadirs.json index 8d7efd5c11..37374393c1 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/nadirs.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/spells/nadirs.json @@ -1,7 +1,7 @@ { "name": "hexcasting.entry.nadirs", "category": "hexcasting:patterns/spells", - "icon": "minecraft:potion{Potion:'minecraft:poison'}", + "icon": "minecraft:potion[minecraft:potion_contents={potion:\"minecraft:poison\"}]", "advancement": "hexcasting:root", "sortnum": 2, "read_by_default": true, diff --git a/Common/src/main/resources/data/hexcasting/advancements/grant_patchi_book.json b/Common/src/main/resources/data/hexcasting/advancement/grant_patchi_book.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/advancements/grant_patchi_book.json rename to Common/src/main/resources/data/hexcasting/advancement/grant_patchi_book.json diff --git a/Common/src/main/resources/data/hexcasting/item_modifiers/amethyst_shard_reducer.json b/Common/src/main/resources/data/hexcasting/item_modifier/amethyst_shard_reducer.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/item_modifiers/amethyst_shard_reducer.json rename to Common/src/main/resources/data/hexcasting/item_modifier/amethyst_shard_reducer.json diff --git a/Common/src/main/resources/data/hexcasting/loot_tables/grant_patchi_book.json b/Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/loot_tables/grant_patchi_book.json rename to Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json diff --git a/Common/src/main/resources/data/hexcasting/recipes/patchi_book.json b/Common/src/main/resources/data/hexcasting/recipe/patchi_book.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/recipes/patchi_book.json rename to Common/src/main/resources/data/hexcasting/recipe/patchi_book.json diff --git a/Common/src/main/resources/data/hexcasting/tags/entity_types/cannot_teleport.json b/Common/src/main/resources/data/hexcasting/tags/entity_type/cannot_teleport.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/tags/entity_types/cannot_teleport.json rename to Common/src/main/resources/data/hexcasting/tags/entity_type/cannot_teleport.json diff --git a/Common/src/main/resources/data/hexcasting/tags/entity_types/sticky_teleporters.json b/Common/src/main/resources/data/hexcasting/tags/entity_type/sticky_teleporters.json similarity index 100% rename from Common/src/main/resources/data/hexcasting/tags/entity_types/sticky_teleporters.json rename to Common/src/main/resources/data/hexcasting/tags/entity_type/sticky_teleporters.json diff --git a/Common/src/main/resources/data/minecraft/tags/items/cluster_max_harvestables.json b/Common/src/main/resources/data/minecraft/tags/item/cluster_max_harvestables.json similarity index 100% rename from Common/src/main/resources/data/minecraft/tags/items/cluster_max_harvestables.json rename to Common/src/main/resources/data/minecraft/tags/item/cluster_max_harvestables.json diff --git a/Neoforge/src/main/resources/data/curios/tags/items/head.json b/Neoforge/src/main/resources/data/curios/tags/item/head.json similarity index 100% rename from Neoforge/src/main/resources/data/curios/tags/items/head.json rename to Neoforge/src/main/resources/data/curios/tags/item/head.json diff --git a/Neoforge/src/main/resources/data/hexcasting/curios/entities/head.json b/Neoforge/src/main/resources/data/hexcasting/curios/entities/head.json new file mode 100644 index 0000000000..361fd3f548 --- /dev/null +++ b/Neoforge/src/main/resources/data/hexcasting/curios/entities/head.json @@ -0,0 +1,8 @@ +{ + "entities": [ + "player" + ], + "slots": [ + "head" + ] +} \ No newline at end of file From fb7544e46b79fe91f0dddc46ed2081cd76d71741 Mon Sep 17 00:00:00 2001 From: slava110 Date: Wed, 18 Jun 2025 06:47:42 +0300 Subject: [PATCH 06/51] Fix inline displaying for entity iotas --- .../java/at/petrak/hexcasting/api/casting/iota/EntityIota.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java index 9e55fed8b0..9c4f3bfc49 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java @@ -74,7 +74,7 @@ public Entity getCachedEntity() { public @Nullable Component getEntityName() { var ent = getCachedEntity(); if(ent != null) { - var name = ent.getName(); + var name = getEntityNameWithInline(ent); this.entityName = name; return name; } From 1098f8a2036dca880b7364cfbdccdbeb2a2f13eb Mon Sep 17 00:00:00 2001 From: slava110 Date: Wed, 18 Jun 2025 06:53:45 +0300 Subject: [PATCH 07/51] Fix creative tab item ordering --- .../hexcasting/common/lib/HexItems.java | 67 ++++++++----------- 1 file changed, 27 insertions(+), 40 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java index 6a727536af..86922ba750 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java @@ -46,13 +46,13 @@ public static void registerItems(BiConsumer r) { public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeModeTab tab) { if (tab == HexCreativeTabs.SCROLLS) generateScrollEntries(r); - for (var item : ITEM_TABS.getOrDefault(tab, Collections.emptySet())) { + for (var item : ITEM_TABS.getOrDefault(tab, Collections.emptyList())) { item.register(r); } } private static final Map ITEMS = new LinkedHashMap<>(); // preserve insertion order - private static final Map> ITEM_TABS = new LinkedHashMap<>(); + private static final Map> ITEM_TABS = new LinkedHashMap<>(); public static final Item AMETHYST_DUST = make("amethyst_dust", new Item(props())); @@ -77,8 +77,8 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemStaff STAFF_MINDSPLICE = make("staff/mindsplice", new ItemStaff(unstackable())); public static final ItemLens SCRYING_LENS = make("lens", new ItemLens( - IXplatAbstractions.INSTANCE.addEquipSlotFabric(EquipmentSlot.HEAD) - .stacksTo(1))); + IXplatAbstractions.INSTANCE.addEquipSlotFabric(EquipmentSlot.HEAD) + .stacksTo(1))); public static final ItemAbacus ABACUS = make("abacus", new ItemAbacus(unstackable())); public static final ItemThoughtKnot THOUGHT_KNOT = make("thought_knot", new ItemThoughtKnot(unstackable())); @@ -91,18 +91,18 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemArtifact ARTIFACT = make("artifact", new ItemArtifact(unstackable().rarity(Rarity.RARE))); public static final ItemJewelerHammer JEWELER_HAMMER = make("jeweler_hammer", - new ItemJewelerHammer(Tiers.IRON, props() - .stacksTo(1) - .durability(Tiers.DIAMOND.getUses()) - .attributes(ItemAttributeModifiers.builder() - .add(Attributes.ATTACK_SPEED, new AttributeModifier( - modLoc("jeweler_hammer_speed"), - -2.8, - AttributeModifier.Operation.ADD_VALUE - ), EquipmentSlotGroup.ANY) - .build() - ) - ) + new ItemJewelerHammer(Tiers.IRON, props() + .stacksTo(1) + .durability(Tiers.DIAMOND.getUses()) + .attributes(ItemAttributeModifiers.builder() + .add(Attributes.ATTACK_SPEED, new AttributeModifier( + modLoc("jeweler_hammer_speed"), + -2.8, + AttributeModifier.Operation.ADD_VALUE + ), EquipmentSlotGroup.ANY) + .build() + ) + ) ); public static final ItemScroll SCROLL_SMOL = make("scroll_small", new ItemScroll(props(), 1)); @@ -112,7 +112,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemSlate SLATE = make("slate", new ItemSlate(HexBlocks.SLATE, props())); public static final ItemMediaBattery BATTERY = make("battery", - new ItemMediaBattery(unstackable()), null); + new ItemMediaBattery(unstackable()), null); public static final Supplier BATTERY_DUST_STACK = addToTab(() -> ItemMediaBattery.withMedia( new ItemStack(HexItems.BATTERY), @@ -146,27 +146,27 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod var out = new EnumMap(ItemPridePigment.Type.class); for (var politicsInMyVidya : ItemPridePigment.Type.values()) { out.put(politicsInMyVidya, make("pride_colorizer_" + politicsInMyVidya.getName(), - new ItemPridePigment(politicsInMyVidya, unstackable()))); + new ItemPridePigment(politicsInMyVidya, unstackable()))); } return out; }); public static final Item UUID_PIGMENT = make("uuid_colorizer", new ItemUUIDPigment(unstackable())); public static final Item DEFAULT_PIGMENT = make("default_colorizer", - new ItemAmethystAndCopperPigment(unstackable())); + new ItemAmethystAndCopperPigment(unstackable())); // BUFF SANDVICH public static final Item SUBMARINE_SANDWICH = make("sub_sandwich", - new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); + new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); public static final ItemLoreFragment LORE_FRAGMENT = make("lore_fragment", - new ItemLoreFragment(unstackable() - .rarity(Rarity.RARE))); + new ItemLoreFragment(unstackable() + .rarity(Rarity.RARE))); public static final ItemCreativeUnlocker CREATIVE_UNLOCKER = make("creative_unlocker", - new ItemCreativeUnlocker(unstackable() - .rarity(Rarity.EPIC) - .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); + new ItemCreativeUnlocker(unstackable() + .rarity(Rarity.EPIC) + .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); // @@ -199,7 +199,7 @@ private static T make(ResourceLocation id, T item, @Nullable Cr throw new IllegalArgumentException("Typo? Duplicate id " + id); } if (tab != null) { - ITEM_TABS.computeIfAbsent(tab, t -> new HashSet<>()).add(new TabEntry.ItemEntry(item)); + ITEM_TABS.computeIfAbsent(tab, t -> new ArrayList<>()).add(new TabEntry.ItemEntry(item)); } return item; } @@ -214,16 +214,13 @@ private static T make(String id, T item) { private static Supplier addToTab(Supplier stack, CreativeModeTab tab) { var memoised = Suppliers.memoize(stack::get); - ITEM_TABS.computeIfAbsent(tab, t -> new HashSet<>()).add(new TabEntry.StackEntry(memoised)); + ITEM_TABS.computeIfAbsent(tab, t -> new ArrayList<>()).add(new TabEntry.StackEntry(memoised)); return memoised; } private static abstract class TabEntry { abstract void register(CreativeModeTab.Output r); - @Override - public abstract int hashCode(); - static class ItemEntry extends TabEntry { private final Item item; @@ -235,11 +232,6 @@ static class ItemEntry extends TabEntry { void register(CreativeModeTab.Output r) { r.accept(item); } - - @Override - public int hashCode() { - return Objects.hashCode(item); - } } static class StackEntry extends TabEntry { @@ -253,11 +245,6 @@ static class StackEntry extends TabEntry { void register(CreativeModeTab.Output r) { r.accept(stack.get()); } - - @Override - public int hashCode() { - return Objects.hashCode(stack); - } } } } From 09495cb19963b24bfc5010b91f28c8ad841b3674 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Mon, 24 Nov 2025 00:18:51 -0600 Subject: [PATCH 08/51] * Mostly complete Implementation of Item Components * Attempted fix of Networking (Incomplete) * Some minor fixes here and there --- .../api/casting/eval/env/StaffCastEnv.java | 3 +- .../hexcasting/api/casting/iota/Iota.java | 22 ++++++++++ .../hexcasting/api/casting/iota/IotaType.java | 12 ++++-- .../hexcasting/api/item/PigmentItem.java | 5 +++ .../casting/actions/spells/OpEdifySapling.kt | 1 - .../components/ItemHexHolderComponent.java | 30 +++++++++++++ .../components/ItemIotaHolderComponent.java | 28 +++++++++++++ .../components/ItemMediaHolderComponent.java | 30 +++++++++++++ .../components/PigmentItemComponent.java | 9 ++++ .../components/VariantItemComponent.java | 27 ++++++++++++ .../common/items/magic/ItemMediaHolder.java | 4 +- .../common/items/storage/ItemAbacus.java | 6 ++- .../common/lib/HexBlockEntities.java | 2 +- .../common/lib/HexItemComponents.java | 4 ++ .../common/misc/AkashicTreeGrower.java | 27 +++++++++--- .../hexcasting/common/msgs/MsgBeepS2C.java | 20 +++++++-- .../hexcasting/common/msgs/MsgBlinkS2C.java | 12 ++++-- .../common/msgs/MsgCastParticleS2C.java | 12 +++--- .../msgs/MsgClearSpiralPatternsS2C.java | 10 +++-- .../common/msgs/MsgNewSpellPatternC2S.java | 10 +++-- .../common/msgs/MsgNewSpellPatternS2C.java | 18 ++++---- .../common/msgs/MsgNewSpiralPatternsS2C.java | 10 +++-- .../common/msgs/MsgNewWallScrollS2C.java | 37 +++++++++++----- .../common/msgs/MsgOpenSpellGuiS2C.java | 17 ++++---- .../msgs/MsgRecalcWallScrollDisplayS2C.java | 10 +++-- .../common/msgs/MsgShiftScrollC2S.java | 28 +++++++++---- .../xplat/IClientXplatAbstractions.java | 3 +- .../hexcasting/xplat/IXplatAbstractions.java | 10 ++--- .../src/main/resources/hexplat.accesswidener | 3 ++ Fabric/build.gradle | 10 ++--- .../hexcasting/fabric/cc/CCAltiora.java | 9 ++-- .../hexcasting/fabric/cc/CCBrainswept.java | 12 +++--- .../fabric/cc/CCClientCastingStack.java | 9 ++-- .../fabric/cc/CCFavoredPigment.java | 9 ++-- .../petrak/hexcasting/fabric/cc/CCFlight.java | 9 ++-- .../hexcasting/fabric/cc/CCPatterns.java | 7 ++-- .../hexcasting/fabric/cc/CCSentinel.java | 11 ++--- .../fabric/cc/CCStaffcastImage.java | 7 ++-- .../fabric/cc/HexCardinalComponents.java | 42 ++++++++++--------- .../fabric/cc/adimpl/CCEntityIotaHolder.java | 5 ++- .../fabric/cc/adimpl/CCHexHolder.java | 7 ++-- .../fabric/cc/adimpl/CCIotaHolder.java | 2 +- .../fabric/cc/adimpl/CCItemIotaHolder.java | 7 ++-- .../fabric/cc/adimpl/CCMediaHolder.java | 8 ++-- .../fabric/cc/adimpl/CCPigment.java | 10 +++-- .../fabric/cc/adimpl/CCVariantItem.java | 9 ++-- .../interop/emi/BrainsweepeeEmiStack.java | 3 +- .../FabricEnchantmentTableBlockMixin.java | 4 +- .../fabric/network/FabricPacketHandler.java | 35 ++++++++-------- .../fabric/xplat/FabricClientXplatImpl.java | 3 +- .../fabric/xplat/FabricXplatImpl.java | 24 +++++------ .../main/resources/fabricasting.accesswidener | 3 ++ .../forge/network/MsgAltioraUpdateAck.java | 14 ++++--- .../forge/network/MsgBrainsweepAck.java | 14 ++++--- .../forge/network/MsgPigmentUpdateAck.java | 18 ++++---- .../network/MsgSentinelStatusUpdateAck.java | 13 ++++-- .../forge/xplat/ForgeClientXplatImpl.java | 3 +- .../forge/xplat/ForgeXplatImpl.java | 10 ++--- 58 files changed, 503 insertions(+), 224 deletions(-) create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/components/ItemIotaHolderComponent.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/components/ItemMediaHolderComponent.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/components/VariantItemComponent.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/lib/HexItemComponents.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java index 29e80d3817..537c146b71 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java @@ -14,6 +14,7 @@ import at.petrak.hexcasting.common.msgs.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.network.chat.Component; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; @@ -131,7 +132,7 @@ public static void handleNewPatternOnServer(ServerPlayer sender, MsgNewSpellPatt IXplatAbstractions.INSTANCE.sendPacketToPlayer(sender, new MsgNewSpellPatternS2C(clientInfo, resolvedPatterns.size() - 1)); - IMessage packet; + CustomPacketPayload packet; if (clientInfo.isStackClear()) { packet = new MsgClearSpiralPatternsS2C(sender.getUUID()); } else { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java index cad6baee82..2920f47ab7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java @@ -9,11 +9,19 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.casting.mishaps.Mishap; import at.petrak.hexcasting.api.casting.mishaps.MishapUnescapedValue; +import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import io.netty.buffer.ByteBuf; import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.item.component.CustomData; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -25,6 +33,20 @@ public abstract class Iota { @NotNull protected final IotaType type; + public static final Codec IOTA_CODEC = HexIotaTypes.REGISTRY.byNameCodec() + .dispatch("type", Iota::getType, IotaType::codec); + + public static final StreamCodec IOTA_STREAM_CODEC = new StreamCodec<>() { + @Override + public void encode(RegistryFriendlyByteBuf buf, Iota iota) { + ByteBufCodecs.fromCodecWithRegistries(IOTA_CODEC).encode(buf, iota); + } + + public Iota decode(RegistryFriendlyByteBuf buf) { + var iota = ByteBufCodecs.fromCodecWithRegistries(IOTA_CODEC).decode(buf); return iota; + } + }; + protected Iota(@NotNull IotaType type, @NotNull Object payload) { this.type = type; this.payload = payload; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index c0167ae5df..f7aa5efa4d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.datafixers.util.Pair; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; import net.minecraft.nbt.CompoundTag; @@ -44,6 +45,12 @@ public abstract class IotaType { */ public abstract int color(); + /** + * Get the MapCodec associated with this datum type. + */ + + public abstract MapCodec codec(); + /** * Get a display component that's the name of this iota type. */ @@ -100,10 +107,7 @@ public static IotaType getTypeFromTag(CompoundTag tag) { return null; } var typeKey = tag.getString(HexIotaTypes.KEY_TYPE); - if (!ResourceLocation.isValidResourceLocation(typeKey)) { - return null; - } - var typeLoc = new ResourceLocation(typeKey); + var typeLoc = ResourceLocation.tryParse(typeKey); return HexIotaTypes.REGISTRY.get(typeLoc); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java index 06829c4b16..7c6f979f23 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java @@ -1,6 +1,9 @@ package at.petrak.hexcasting.api.item; import at.petrak.hexcasting.api.pigment.ColorProvider; +import com.mojang.serialization.Codec; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.entity.animal.Pig; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.ApiStatus; @@ -16,3 +19,5 @@ public interface PigmentItem { ColorProvider provideColor(ItemStack stack, UUID owner); } + + diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt index 415d4c2a13..386fad014e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt @@ -51,7 +51,6 @@ object OpEdifySapling : SpellAction { env.world, env.world.chunkSource.generator, pos, - bs, env.world.getRandom() ) if (success) break diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java new file mode 100644 index 0000000000..8cc89c1f29 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java @@ -0,0 +1,30 @@ +package at.petrak.hexcasting.common.components; + +import at.petrak.hexcasting.api.casting.iota.Iota; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.Tag; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.world.item.component.CustomData; + +import java.util.List; + +public record ItemHexHolderComponent(List hex) { + public static final ItemHexHolderComponent EMPTY = new ItemHexHolderComponent(List.of()); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Iota.IOTA_CODEC.listOf().fieldOf("datum").forGetter(ItemHexHolderComponent::hex) + ).apply(instance, ItemHexHolderComponent::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + Iota.IOTA_STREAM_CODEC.apply(ByteBufCodecs.list()), + ItemHexHolderComponent::hex, + ItemHexHolderComponent::new + ); + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + .persistent(CODEC) + .networkSynchronized(STREAM_CODEC) + .build(); +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/ItemIotaHolderComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemIotaHolderComponent.java new file mode 100644 index 0000000000..58b3dcfed6 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemIotaHolderComponent.java @@ -0,0 +1,28 @@ +package at.petrak.hexcasting.common.components; + +import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.casting.iota.NullIota; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; + +public record ItemIotaHolderComponent(Iota iota) { + public static final ItemIotaHolderComponent EMPTY = new ItemIotaHolderComponent(new NullIota()); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Iota.IOTA_CODEC.fieldOf("datum").forGetter(ItemIotaHolderComponent::iota) + ).apply(instance, ItemIotaHolderComponent::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + Iota.IOTA_STREAM_CODEC, + ItemIotaHolderComponent::iota, + ItemIotaHolderComponent::new + ); + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + .persistent(CODEC) + .networkSynchronized(STREAM_CODEC) + .build(); +} + + diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/ItemMediaHolderComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemMediaHolderComponent.java new file mode 100644 index 0000000000..2bb83241e0 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemMediaHolderComponent.java @@ -0,0 +1,30 @@ +package at.petrak.hexcasting.common.components; + +import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.common.items.magic.ItemMediaHolder; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.world.item.Item; + +public record ItemMediaHolderComponent(long media, long max_media) { + public static final ItemMediaHolderComponent EMPTY = new ItemMediaHolderComponent(0, 0); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.LONG.fieldOf(ItemMediaHolder.TAG_MEDIA).forGetter(ItemMediaHolderComponent::media), + Codec.LONG.fieldOf(ItemMediaHolder.TAG_MAX_MEDIA).forGetter(ItemMediaHolderComponent::max_media) + ).apply(instance, ItemMediaHolderComponent::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.VAR_LONG, + ItemMediaHolderComponent::media, + ByteBufCodecs.VAR_LONG, + ItemMediaHolderComponent::max_media, + ItemMediaHolderComponent::new + ); + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + .persistent(CODEC) + .networkSynchronized(STREAM_CODEC) + .build(); +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java new file mode 100644 index 0000000000..1b6318bf0c --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java @@ -0,0 +1,9 @@ +package at.petrak.hexcasting.common.components; + +import at.petrak.hexcasting.api.item.PigmentItem; +import net.minecraft.core.component.DataComponentType; + +public record PigmentItemComponent(PigmentItem item) { + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + .build(); +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/VariantItemComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/VariantItemComponent.java new file mode 100644 index 0000000000..12d61d9062 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/VariantItemComponent.java @@ -0,0 +1,27 @@ +package at.petrak.hexcasting.common.components; + +import at.petrak.hexcasting.api.item.VariantItem; +import at.petrak.hexcasting.common.items.magic.ItemMediaHolder; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; + +public record VariantItemComponent(int variant) { + public static final VariantItemComponent EMPTY = new VariantItemComponent(0); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.INT.fieldOf(VariantItem.TAG_VARIANT).forGetter(VariantItemComponent::variant) + ).apply(instance, VariantItemComponent::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.INT, + VariantItemComponent::variant, + VariantItemComponent::new + ); + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + .persistent(CODEC) + .networkSynchronized(STREAM_CODEC) + .build(); +} + diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java index 5bc736a2fa..afa1183fd2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java @@ -19,8 +19,8 @@ import java.util.List; public abstract class ItemMediaHolder extends Item implements MediaHolderItem { - public static final String TAG_MEDIA = "hexcasting:media"; - public static final String TAG_MAX_MEDIA = "hexcasting:start_media"; + public static final String TAG_MEDIA = "media"; + public static final String TAG_MAX_MEDIA = "max_media"; public static final TextColor HEX_COLOR = TextColor.fromRgb(0xb38ef3); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index ad8527581f..f379d059c3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -6,6 +6,7 @@ import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexSounds; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.InteractionHand; @@ -17,10 +18,11 @@ import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; +import javax.xml.crypto.Data; import java.util.List; public class ItemAbacus extends Item implements IotaHolderItem { - public static final String TAG_VALUE = "value"; + public static final String TAG_VALUE = "abacus_value"; public ItemAbacus(Properties pProperties) { super(pProperties); @@ -29,7 +31,7 @@ public ItemAbacus(Properties pProperties) { @Override public @Nullable CompoundTag readIotaTag(ItemStack stack) { - var datum = new DoubleIota(NBTHelper.getDouble(stack, TAG_VALUE)); + var datum = new DoubleIota(stack.get(DataComponents.CUSTOM_DATA).copyTag().getDouble(TAG_VALUE)); return IotaType.serialize(datum); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java index 6e22920668..e29584155a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlockEntities.java @@ -80,7 +80,7 @@ public static BlockEntityType typeForQuenchedAllay(Blo private static BlockEntityType register(String id, BiFunction func, Block... blocks) { var ret = IXplatAbstractions.INSTANCE.createBlockEntityType(func, blocks); - var old = BLOCK_ENTITIES.put(new ResourceLocation(HexAPI.MOD_ID, id), ret); + var old = BLOCK_ENTITIES.put(ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, id), ret); if (old != null) { throw new IllegalArgumentException("Duplicate id " + id); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItemComponents.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItemComponents.java new file mode 100644 index 0000000000..a12af3bc05 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItemComponents.java @@ -0,0 +1,4 @@ +package at.petrak.hexcasting.common.lib; + +public class HexItemComponents { +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java index d346979600..6480d6d983 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java @@ -2,15 +2,20 @@ import at.petrak.hexcasting.common.lib.HexConfiguredFeatures; import com.google.common.collect.Lists; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.packs.resources.Resource; import net.minecraft.util.RandomSource; -import net.minecraft.world.level.block.grower.AbstractTreeGrower; +import net.minecraft.world.level.block.grower.TreeGrower; +import net.minecraft.world.level.chunk.ChunkGenerator; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import java.util.List; -// TODO they fucking changed the trees AGAIN -public class AkashicTreeGrower extends AbstractTreeGrower { +// i gotcha :3 +public class AkashicTreeGrower { public static final AkashicTreeGrower INSTANCE = new AkashicTreeGrower(); public static final List>> GROWERS = Lists.newArrayList(); @@ -21,8 +26,20 @@ public static void init() { GROWERS.add(HexConfiguredFeatures.CITRINE_EDIFIED_TREE); } - @Override - protected ResourceKey> getConfiguredFeature(RandomSource pRandom, boolean pLargeHive) { + protected ResourceKey> getConfiguredFeature(RandomSource pRandom) { return GROWERS.get(pRandom.nextInt(GROWERS.size())); } + + public boolean growTree(ServerLevel level, ChunkGenerator generator, BlockPos pos, RandomSource source) { + if (GROWERS.isEmpty()) return false; + + var key = this.getConfiguredFeature(source); + + var registry = level.registryAccess().registryOrThrow(Registries.CONFIGURED_FEATURE); + + var holder = registry.getHolderOrThrow(key); + ConfiguredFeature feature = holder.value(); + + return feature.place(level, generator, source, pos); + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java index 852fc675af..6213b31ed6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java @@ -4,6 +4,10 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundSource; import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; @@ -11,14 +15,20 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements IMessage { - public static final ResourceLocation ID = modLoc("beep"); +public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgBeepS2C::serialize, MsgBeepS2C::deserialize); + + public static final Type ID = new Type<>(modLoc("beep")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } + private static void encode(FriendlyByteBuf buf, MsgBeepS2C msg) { + msg.serialize(buf); + } + public static MsgBeepS2C deserialize(ByteBuf buffer) { var buf = new FriendlyByteBuf(buffer); var x = buf.readDouble(); @@ -29,7 +39,7 @@ public static MsgBeepS2C deserialize(ByteBuf buffer) { return new MsgBeepS2C(new Vec3(x, y, z), note, instrument); } - @Override + public void serialize(FriendlyByteBuf buf) { buf.writeDouble(this.target.x); buf.writeDouble(this.target.y); @@ -54,4 +64,6 @@ public void run() { } }); } + + } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java index ab75bc20ed..9c2c93bd92 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java @@ -3,6 +3,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.phys.Vec3; @@ -11,11 +13,12 @@ /** * Sent server->client to synchronize OpBlink when the target is a player. */ -public record MsgBlinkS2C(Vec3 addedPosition) implements IMessage { - public static final ResourceLocation ID = modLoc("blink"); +public record MsgBlinkS2C(Vec3 addedPosition) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgBlinkS2C::serialize, MsgBlinkS2C::deserialize); + public static final Type ID = new Type<>(modLoc("blink")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -27,7 +30,6 @@ public static MsgBlinkS2C deserialize(ByteBuf buffer) { return new MsgBlinkS2C(new Vec3(x, y, z)); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeDouble(this.addedPosition.x); buf.writeDouble(this.addedPosition.y); @@ -43,4 +45,6 @@ public void run() { } }); } + + } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java index 9ec659b8b6..e0cac64cb6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java @@ -7,6 +7,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.phys.Vec3; @@ -18,11 +20,12 @@ /** * Sent server->client to spray particles everywhere. */ -public record MsgCastParticleS2C(ParticleSpray spray, FrozenPigment colorizer) implements IMessage { - public static final ResourceLocation ID = modLoc("cprtcl"); +public record MsgCastParticleS2C(ParticleSpray spray, FrozenPigment colorizer) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgCastParticleS2C::serialize, MsgCastParticleS2C::deserialize); + public static final Type ID = new Type<>(modLoc("cprtcl")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -37,14 +40,13 @@ public static MsgCastParticleS2C deserialize(ByteBuf buffer) { var fuzziness = buf.readDouble(); var spread = buf.readDouble(); var count = buf.readInt(); - var tag = buf.readAnySizeNbt(); + var tag = buf.readNbt(); var colorizer = FrozenPigment.fromNBT(tag); return new MsgCastParticleS2C( new ParticleSpray(new Vec3(posX, posY, posZ), new Vec3(velX, velY, velZ), fuzziness, spread, count), colorizer); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeDouble(this.spray.getPos().x); buf.writeDouble(this.spray.getPos().y); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java index 1f454ba700..ec025a7075 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java @@ -4,17 +4,20 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import java.util.UUID; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements IMessage { - public static final ResourceLocation ID = modLoc("clr_spi_pats_sc"); +public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgClearSpiralPatternsS2C::serialize, MsgClearSpiralPatternsS2C::deserialize); + public static final CustomPacketPayload.Type ID = new CustomPacketPayload.Type<>(modLoc("clr_spi_pats_sc")); @Override - public ResourceLocation getFabricId() { + public CustomPacketPayload.Type type() { return ID; } @@ -26,7 +29,6 @@ public static MsgClearSpiralPatternsS2C deserialize(ByteBuf buffer) { return new MsgClearSpiralPatternsS2C(player); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeUUID(playerUUID); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java index ce19d966b3..cd176d069a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java @@ -5,6 +5,8 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import io.netty.buffer.ByteBuf; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; @@ -21,11 +23,12 @@ */ public record MsgNewSpellPatternC2S(InteractionHand handUsed, HexPattern pattern, List resolvedPatterns) - implements IMessage { - public static final ResourceLocation ID = modLoc("pat_cs"); + implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpellPatternC2S::serialize, MsgNewSpellPatternC2S::deserialize); + public static final Type ID = new Type<>(modLoc("pat_cs")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -42,7 +45,6 @@ public static MsgNewSpellPatternC2S deserialize(ByteBuf buffer) { return new MsgNewSpellPatternC2S(hand, pattern, resolvedPatterns); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeEnum(handUsed); buf.writeNbt(this.pattern.serializeToNBT()); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java index cadf3dd100..0a21a6eae9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java @@ -7,6 +7,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import java.util.Optional; @@ -16,11 +18,12 @@ /** * Sent server->client when the player finishes casting a spell. */ -public record MsgNewSpellPatternS2C(ExecutionClientView info, int index) implements IMessage { - public static final ResourceLocation ID = modLoc("pat_sc"); +public record MsgNewSpellPatternS2C(ExecutionClientView info, int index) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpellPatternS2C::serialize, MsgNewSpellPatternS2C::deserialize); + public static final Type ID = new Type<>(modLoc("pat_sc")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -31,22 +34,21 @@ public static MsgNewSpellPatternS2C deserialize(ByteBuf buffer) { var resolutionType = buf.readEnum(ResolvedPatternType.class); var index = buf.readInt(); - var stack = buf.readList(FriendlyByteBuf::readNbt); - var raven = buf.readOptional(FriendlyByteBuf::readNbt).orElse(null); + var stack = buf.readList(bu -> bu.readNbt()); + var raven = buf.readOptional(bu -> bu.readNbt()).orElse(null); return new MsgNewSpellPatternS2C( new ExecutionClientView(isStackEmpty, resolutionType, stack, raven), index ); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeBoolean(this.info.isStackClear()); buf.writeEnum(this.info.getResolutionType()); buf.writeInt(this.index); - buf.writeCollection(this.info.getStackDescs(), FriendlyByteBuf::writeNbt); - buf.writeOptional(Optional.ofNullable(this.info.getRavenmind()), FriendlyByteBuf::writeNbt); + buf.writeCollection(this.info.getStackDescs(), (b, t) -> b.writeNbt(t)); + buf.writeOptional(Optional.ofNullable(this.info.getRavenmind()), (b, t) -> b.writeNbt(t)); } public static void handle(MsgNewSpellPatternS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java index 9c5a02180c..dfc8f13f04 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java @@ -5,6 +5,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import java.util.ArrayList; @@ -13,11 +15,12 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements IMessage { - public static final ResourceLocation ID = modLoc("spi_pats_sc"); +public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpiralPatternsS2C::serialize, MsgNewSpiralPatternsS2C::deserialize); + public static final Type ID = new Type<>(modLoc("spi_pats_sc")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -32,7 +35,6 @@ public static MsgNewSpiralPatternsS2C deserialize(ByteBuf buffer) { return new MsgNewSpiralPatternsS2C(player, patterns, lifetime); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeUUID(playerUUID); buf.writeCollection(patterns, (buff, pattern) -> buff.writeNbt(pattern.serializeToNBT())); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java index 67e77248cc..736a4e4ecd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java @@ -5,7 +5,12 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; @@ -14,29 +19,41 @@ // https://github.com/VazkiiMods/Botania/blob/1.18.x/Xplat/src/main/java/vazkii/botania/network/clientbound/PacketSpawnDoppleganger.java public record MsgNewWallScrollS2C(ClientboundAddEntityPacket inner, BlockPos pos, Direction dir, ItemStack scrollItem, - boolean showsStrokeOrder, int blockSize) implements IMessage { - public static final ResourceLocation ID = modLoc("wallscr"); + boolean showsStrokeOrder, int blockSize) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewWallScrollS2C::serialize, MsgNewWallScrollS2C::deserialize); + public static final Type ID = new Type<>(modLoc("wallscr")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } - @Override - public void serialize(FriendlyByteBuf buf) { - inner.write(buf); + public void serialize(RegistryFriendlyByteBuf buf) { + buf.writeVarInt(inner.getId()); + buf.writeUUID(inner.getUUID()); + ByteBufCodecs.registry(Registries.ENTITY_TYPE).encode(buf, inner.getType()); + buf.writeDouble(inner.getX()); + buf.writeDouble(inner.getY()); + buf.writeDouble(inner.getZ()); + buf.writeByte((byte) inner.getXRot()); + buf.writeByte((byte) inner.getYRot()); + buf.writeByte((byte) inner.getYHeadRot()); + buf.writeVarInt(inner.getData()); + buf.writeShort((short) inner.getXa()); + buf.writeShort((short) inner.getYa()); + buf.writeShort((short) inner.getZa()); buf.writeBlockPos(pos); buf.writeByte(dir.ordinal()); - buf.writeItem(scrollItem); + ItemStack.STREAM_CODEC.encode(buf, scrollItem); buf.writeBoolean(showsStrokeOrder); buf.writeVarInt(blockSize); } - public static MsgNewWallScrollS2C deserialize(FriendlyByteBuf buf) { - var inner = new ClientboundAddEntityPacket(buf); + public static MsgNewWallScrollS2C deserialize(RegistryFriendlyByteBuf buf) { + var inner = ClientboundAddEntityPacket.STREAM_CODEC.decode(buf); var pos = buf.readBlockPos(); var dir = HexUtils.getSafe(Direction.values(), buf.readByte()); - var scroll = buf.readItem(); + var scroll = ItemStack.STREAM_CODEC.decode(buf); var strokeOrder = buf.readBoolean(); var blockSize = buf.readVarInt(); return new MsgNewWallScrollS2C(inner, pos, dir, scroll, strokeOrder, blockSize); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index a06e608bdb..406c5ba347 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -6,6 +6,8 @@ import net.minecraft.client.Minecraft; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.InteractionHand; @@ -21,11 +23,12 @@ public record MsgOpenSpellGuiS2C(InteractionHand hand, List pat CompoundTag ravenmind, int parenCount ) - implements IMessage { - public static final ResourceLocation ID = modLoc("cgui"); + implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgOpenSpellGuiS2C::serialize, MsgOpenSpellGuiS2C::deserialize); + public static final Type ID = new Type<>(modLoc("cgui")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -34,10 +37,10 @@ public static MsgOpenSpellGuiS2C deserialize(ByteBuf buffer) { var hand = buf.readEnum(InteractionHand.class); - var patterns = buf.readList(fbb -> ResolvedPattern.fromNBT(fbb.readAnySizeNbt())); + var patterns = buf.readList(fbb -> ResolvedPattern.fromNBT(fbb.readNbt())); - var stack = buf.readList(FriendlyByteBuf::readNbt); - var raven = buf.readAnySizeNbt(); + var stack = buf.readList(b -> b.readNbt()); + var raven = buf.readNbt(); var parenCount = buf.readVarInt(); @@ -49,7 +52,7 @@ public void serialize(FriendlyByteBuf buf) { buf.writeCollection(this.patterns, (fbb, pat) -> fbb.writeNbt(pat.serializeToNBT())); - buf.writeCollection(this.stack, FriendlyByteBuf::writeNbt); + buf.writeCollection(this.stack, (b, t) -> b.writeNbt(t)); buf.writeNbt(this.ravenmind); buf.writeVarInt(this.parenCount); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java index 137c97f534..f512ab581e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java @@ -4,6 +4,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -11,8 +13,9 @@ /** * Sent S->C to have a wall scroll recalculate its pattern, to get readability offset. */ -public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrder) implements IMessage { - public static final ResourceLocation ID = modLoc("redoscroll"); +public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrder) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgRecalcWallScrollDisplayS2C::serialize, MsgRecalcWallScrollDisplayS2C::deserialize); + public static final Type ID = new Type<>(modLoc("redoscroll")); public static MsgRecalcWallScrollDisplayS2C deserialize(ByteBuf buffer) { var buf = new FriendlyByteBuf(buffer); @@ -21,14 +24,13 @@ public static MsgRecalcWallScrollDisplayS2C deserialize(ByteBuf buffer) { return new MsgRecalcWallScrollDisplayS2C(id, showStrokeOrder); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeVarInt(entityId); buf.writeBoolean(showStrokeOrder); } @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java index e1f4d354a6..22eed2d2cc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java @@ -8,15 +8,23 @@ import at.petrak.hexcasting.common.lib.HexSounds; import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.core.component.DataComponents; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; + +import javax.xml.crypto.Data; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -25,11 +33,12 @@ * or scrolls in the spellcasting UI. */ public record MsgShiftScrollC2S(double mainHandDelta, double offHandDelta, boolean isCtrl, boolean invertSpellbook, - boolean invertAbacus) implements IMessage { - public static final ResourceLocation ID = modLoc("scroll"); + boolean invertAbacus) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgShiftScrollC2S::serialize, MsgShiftScrollC2S::deserialize); + public static final Type ID = new Type<>(modLoc("scroll")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -82,19 +91,19 @@ private void spellbook(ServerPlayer sender, InteractionHand hand, ItemStack stac var sealed = ItemSpellbook.isSealed(stack); MutableComponent component; - if (hand == InteractionHand.OFF_HAND && stack.hasCustomHoverName()) { + if (hand == InteractionHand.OFF_HAND && stack.has(DataComponents.CUSTOM_NAME)) { if (sealed) { component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name.sealed", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), - Component.literal("").withStyle(stack.getRarity().color, ChatFormatting.ITALIC) + Component.literal("").withStyle(stack.getRarity().color(), ChatFormatting.ITALIC) .append(stack.getHoverName()), Component.translatable("hexcasting.tooltip.spellbook.sealed").withStyle(ChatFormatting.GOLD)); } else { component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), - Component.literal("").withStyle(stack.getRarity().color, ChatFormatting.ITALIC) + Component.literal("").withStyle(stack.getRarity().color(), ChatFormatting.ITALIC) .append(stack.getHoverName())); } @@ -120,7 +129,7 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, } var increase = delta < 0; - double num = NBTHelper.getDouble(stack, ItemAbacus.TAG_VALUE); + double num = stack.get(DataComponents.CUSTOM_DATA).copyTag().getDouble(ItemAbacus.TAG_VALUE); double shiftDelta; float pitch; @@ -135,7 +144,10 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, int scale = Math.max((int) Math.floor(Math.abs(delta)), 1); num += scale * shiftDelta * (increase ? 1 : -1); - NBTHelper.putDouble(stack, ItemAbacus.TAG_VALUE, num); + CustomData data = stack.getOrDefault(DataComponents.CUSTOM_DATA, CustomData.EMPTY); + CompoundTag tag = data.copyTag(); + tag.putDouble(ItemAbacus.TAG_VALUE, num); + stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); pitch *= (increase ? 1.05f : 0.95f); pitch += (Math.random() - 0.5) * 0.1; diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java index 81806255b3..b685b9ea36 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.client.ClientCastingStack; -import at.petrak.hexcasting.common.msgs.IMessage; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.item.ItemPropertyFunction; @@ -19,7 +18,7 @@ import java.util.stream.Collectors; public interface IClientXplatAbstractions { - void sendPacketToServer(IMessage packet); + void sendPacketToServer(CustomPacketPayload packet); void setRenderLayer(Block block, RenderType type); diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 86dbc24586..02a024200e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -19,12 +19,12 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -65,14 +65,14 @@ public interface IXplatAbstractions { void initPlatformSpecific(); - void sendPacketToPlayer(ServerPlayer target, IMessage packet); + void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet); - void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, IMessage packet); + void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet); - void sendPacketTracking(Entity entity, IMessage packet); + void sendPacketTracking(Entity entity, CustomPacketPayload packet); // https://github.com/VazkiiMods/Botania/blob/13b7bcd9cbb6b1a418b0afe455662d29b46f1a7f/Xplat/src/main/java/vazkii/botania/xplat/IXplatAbstractions.java#L157 - Packet toVanillaClientboundPacket(IMessage message); + Packet toVanillaClientboundPacket(CustomPacketPayload message); // double getReachDistance(Player player); diff --git a/Common/src/main/resources/hexplat.accesswidener b/Common/src/main/resources/hexplat.accesswidener index d8a1955d13..014ebe6a89 100644 --- a/Common/src/main/resources/hexplat.accesswidener +++ b/Common/src/main/resources/hexplat.accesswidener @@ -7,4 +7,7 @@ accessible class net/minecraft/world/item/crafting/Ingredient$Value accessible method net/minecraft/world/item/crafting/Ingredient (Ljava/util/stream/Stream;)V accessible method net/minecraft/world/item/context/UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; +accessible class net/minecraft/network/protocol/game/ClientboundAddEntityPacket +accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V +accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket write (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; \ No newline at end of file diff --git a/Fabric/build.gradle b/Fabric/build.gradle index ff0e8b62d7..4be19ce0cb 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -108,11 +108,11 @@ dependencies { // modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" modImplementation "io.wispforest:accessories-fabric:$accessoriesVersion" - modImplementation "dev.onyxstudios.cardinal-components-api:cardinal-components-base:$cardinalComponentsVersion" -// modImplementation "dev.onyxstudios.cardinal-components-api:cardinal-components-util:$cardinalComponentsVersion" - modImplementation "dev.onyxstudios.cardinal-components-api:cardinal-components-entity:$cardinalComponentsVersion" - modImplementation "dev.onyxstudios.cardinal-components-api:cardinal-components-item:$cardinalComponentsVersion" - modImplementation "dev.onyxstudios.cardinal-components-api:cardinal-components-block:$cardinalComponentsVersion" + modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-base:$cardinalComponentsVersion" +// modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-util:$cardinalComponentsVersion" + modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-entity:$cardinalComponentsVersion" + modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-item:$cardinalComponentsVersion" + modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-block:$cardinalComponentsVersion" // apparently the 1.18 version Just Works on 1.19 modImplementation "${modID}:serialization-hooks:$serializationHooksVersion" diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java index 17d1489f76..66efacd5ff 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java @@ -1,8 +1,9 @@ package at.petrak.hexcasting.fabric.cc; import at.petrak.hexcasting.api.player.AltioraAbility; -import dev.onyxstudios.cca.api.v3.component.Component; -import dev.onyxstudios.cca.api.v3.component.sync.AutoSyncedComponent; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; import org.jetbrains.annotations.Nullable; @@ -34,7 +35,7 @@ public void setAltiora(AltioraAbility altiora) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { var allowed = tag.getBoolean(TAG_ALLOWED); if (!allowed) { this.altiora = null; @@ -45,7 +46,7 @@ public void readFromNbt(CompoundTag tag) { } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.putBoolean(TAG_ALLOWED, this.altiora != null); if (this.altiora != null) { tag.putInt(TAG_GRACE, this.altiora.gracePeriod()); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java index 34406f7421..a948055463 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java @@ -1,7 +1,9 @@ package at.petrak.hexcasting.fabric.cc; -import dev.onyxstudios.cca.api.v3.component.Component; -import dev.onyxstudios.cca.api.v3.component.sync.AutoSyncedComponent; +import net.minecraft.core.HolderLookup; +import net.minecraft.network.RegistryFriendlyByteBuf; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.LivingEntity; @@ -28,19 +30,19 @@ public void setBrainswept(boolean brainswept) { } @Override - public void applySyncPacket(FriendlyByteBuf buf) { + public void applySyncPacket(RegistryFriendlyByteBuf buf) { AutoSyncedComponent.super.applySyncPacket(buf); if (owner instanceof Mob mob && brainswept) mob.removeFreeWill(); } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { this.brainswept = tag.getBoolean(TAG_BRAINSWEPT); } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.putBoolean(TAG_BRAINSWEPT, this.brainswept); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java index 90fbadffeb..7552956809 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java @@ -1,8 +1,9 @@ package at.petrak.hexcasting.fabric.cc; import at.petrak.hexcasting.api.client.ClientCastingStack; -import dev.onyxstudios.cca.api.v3.component.Component; -import dev.onyxstudios.cca.api.v3.component.tick.ClientTickingComponent; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.tick.ClientTickingComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; @@ -23,8 +24,8 @@ public void clientTick() { } @Override - public void readFromNbt(CompoundTag tag) { } + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { } @Override - public void writeToNbt(CompoundTag tag) { } + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java index 7eaf3b5ba1..70919c6fc3 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java @@ -1,8 +1,9 @@ package at.petrak.hexcasting.fabric.cc; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import dev.onyxstudios.cca.api.v3.component.Component; -import dev.onyxstudios.cca.api.v3.component.sync.AutoSyncedComponent; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; import org.jetbrains.annotations.Nullable; @@ -33,12 +34,12 @@ public FrozenPigment setPigment(@Nullable FrozenPigment pigment) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { this.pigment = FrozenPigment.fromNBT(tag.getCompound(TAG_PIGMENT)); } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.put(TAG_PIGMENT, this.pigment.serializeToNBT()); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java index e7747fac3f..629585a13d 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java @@ -2,7 +2,8 @@ import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.utils.HexUtils; -import dev.onyxstudios.cca.api.v3.component.Component; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; @@ -37,14 +38,14 @@ public void setFlight(FlightAbility flight) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { var allowed = tag.getBoolean(TAG_ALLOWED); if (!allowed) { this.flight = null; } else { var timeLeft = tag.getInt(TAG_TIME_LEFT); var dim = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_DIMENSION))); + ResourceLocation.parse(tag.getString(TAG_DIMENSION))); var origin = HexUtils.vecFromNBT(tag.getCompound(TAG_ORIGIN)); var radius = tag.getDouble(TAG_RADIUS); this.flight = new FlightAbility(timeLeft, dim, origin, radius); @@ -52,7 +53,7 @@ public void readFromNbt(CompoundTag tag) { } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.putBoolean(TAG_ALLOWED, this.flight != null); if (this.flight != null) { tag.putInt(TAG_TIME_LEFT, this.flight.timeLeft()); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java index 6faa0f70d8..de46b5e2e8 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java @@ -1,7 +1,8 @@ package at.petrak.hexcasting.fabric.cc; import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; -import dev.onyxstudios.cca.api.v3.component.Component; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.nbt.Tag; @@ -33,7 +34,7 @@ public void setPatterns(List patterns) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { ListTag patternsTag = tag.getList(TAG_PATTERNS, Tag.TAG_COMPOUND); List patterns = new ArrayList<>(patternsTag.size()); @@ -45,7 +46,7 @@ public void readFromNbt(CompoundTag tag) { } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { var listTag = new ListTag(); for (ResolvedPattern pattern : patterns) { listTag.add(pattern.serializeToNBT()); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java index d5925796fb..e0db645188 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java @@ -2,8 +2,9 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; -import dev.onyxstudios.cca.api.v3.component.Component; -import dev.onyxstudios.cca.api.v3.component.sync.AutoSyncedComponent; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; @@ -36,13 +37,13 @@ public void setSentinel(Sentinel sentinel) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { var hasSentinel = tag.getBoolean(TAG_HAS_SENTINEL); if (hasSentinel) { var extendsRange = tag.getBoolean(TAG_EXTENDS_RANGE); var position = HexUtils.vecFromNBT(tag.getCompound(TAG_POSITION)); var dim = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_DIMENSION))); + ResourceLocation.parse(tag.getString(TAG_DIMENSION))); this.sentinel = new Sentinel(extendsRange, position, dim); } else { this.sentinel = null; @@ -50,7 +51,7 @@ public void readFromNbt(CompoundTag tag) { } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.putBoolean(TAG_HAS_SENTINEL, this.sentinel != null); if (this.sentinel != null) { tag.putBoolean(TAG_EXTENDS_RANGE, this.sentinel.extendsRange()); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java index bb6018946f..a1435d31c8 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java @@ -3,7 +3,8 @@ import at.petrak.hexcasting.api.casting.eval.env.StaffCastEnv; import at.petrak.hexcasting.api.casting.eval.vm.CastingImage; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; -import dev.onyxstudios.cca.api.v3.component.Component; +import net.minecraft.core.HolderLookup; +import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; @@ -38,12 +39,12 @@ public void setImage(@Nullable CastingImage image) { } @Override - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { this.lazyLoadedTag = tag.getCompound(TAG_HARNESS); } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { tag.put(TAG_HARNESS, this.lazyLoadedTag); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java index fd2f5978e1..3a7a3ca8a9 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java @@ -6,24 +6,26 @@ import at.petrak.hexcasting.api.item.*; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexConfig; +import at.petrak.hexcasting.common.components.*; import at.petrak.hexcasting.common.entities.EntityWallScroll; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.fabric.cc.adimpl.*; -import dev.onyxstudios.cca.api.v3.component.ComponentFactory; -import dev.onyxstudios.cca.api.v3.component.ComponentKey; -import dev.onyxstudios.cca.api.v3.component.ComponentRegistry; -import dev.onyxstudios.cca.api.v3.entity.EntityComponentFactoryRegistry; -import dev.onyxstudios.cca.api.v3.entity.EntityComponentInitializer; -import dev.onyxstudios.cca.api.v3.entity.RespawnCopyStrategy; -import dev.onyxstudios.cca.api.v3.item.ItemComponentFactoryRegistry; -import dev.onyxstudios.cca.api.v3.item.ItemComponentInitializer; +import org.ladysnake.cca.api.v3.component.ComponentFactory; +import org.ladysnake.cca.api.v3.component.ComponentKey; +import org.ladysnake.cca.api.v3.component.ComponentRegistry; +import org.ladysnake.cca.api.v3.entity.EntityComponentFactoryRegistry; +import org.ladysnake.cca.api.v3.entity.EntityComponentInitializer; +import org.ladysnake.cca.api.v3.entity.RespawnCopyStrategy; +import org.ladysnake.cca.api.v3.item.ItemComponentFactoryRegistry; +import org.ladysnake.cca.api.v3.item.ItemComponentInitializer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.decoration.ItemFrame; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.item.Items; +import org.ladysnake.cca.api.v3.item.ItemComponentMigrationRegistry; import java.util.function.Function; @@ -85,35 +87,35 @@ public void registerEntityComponentFactories(EntityComponentFactoryRegistry regi } @Override - public void registerItemComponentFactories(ItemComponentFactoryRegistry registry) { - registry.register(i -> i instanceof PigmentItem, PIGMENT, CCPigment.ItemBased::new); + public void registerItemComponentMigrations(ItemComponentMigrationRegistry registry) { + registry.registerMigration(modLoc("pigment"), PigmentItemComponent.COMPONENT_TYPE); - registry.register(i -> i instanceof IotaHolderItem, IOTA_HOLDER, CCItemIotaHolder.ItemBased::new); + registry.registerMigration(modLoc("iota_holder"), ItemIotaHolderComponent.COMPONENT_TYPE); // oh havoc, you think you're so funny // the worst part is you're /right/ - registry.register(Items.PUMPKIN_PIE, IOTA_HOLDER, stack -> new CCItemIotaHolder.Static(stack, + registry.registerMigration(Items.PUMPKIN_PIE, IOTA_HOLDER, stack -> new CCItemIotaHolder.Static(stack, s -> new DoubleIota(Math.PI * s.getCount()))); - registry.register(i -> i instanceof MediaHolderItem, MEDIA_HOLDER, CCMediaHolder.ItemBased::new); - registry.register(HexItems.AMETHYST_DUST, MEDIA_HOLDER, s -> new CCMediaHolder.Static( + registry.registerMigration(modLoc("media_holder"), ItemMediaHolderComponent.COMPONENT_TYPE); + registry.registerMigration(modLoc("media_holder"), s -> new CCMediaHolder.Static( () -> HexConfig.common().dustMediaAmount(), ADMediaHolder.AMETHYST_DUST_PRIORITY, s )); - registry.register(Items.AMETHYST_SHARD, MEDIA_HOLDER, s -> new CCMediaHolder.Static( + registry.registerMigration(Items.AMETHYST_SHARD, MEDIA_HOLDER, s -> new CCMediaHolder.Static( () -> HexConfig.common().shardMediaAmount(), ADMediaHolder.AMETHYST_SHARD_PRIORITY, s )); - registry.register(HexItems.CHARGED_AMETHYST, MEDIA_HOLDER, s -> new CCMediaHolder.Static( + registry.registerMigration(HexItems.CHARGED_AMETHYST, MEDIA_HOLDER, s -> new CCMediaHolder.Static( () -> HexConfig.common().chargedCrystalMediaAmount(), ADMediaHolder.CHARGED_AMETHYST_PRIORITY, s )); - registry.register(HexItems.QUENCHED_SHARD.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( + registry.registerMigration(HexItems.QUENCHED_SHARD.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( () -> MediaConstants.QUENCHED_SHARD_UNIT, ADMediaHolder.QUENCHED_SHARD_PRIORITY, s )); - registry.register(HexBlocks.QUENCHED_ALLAY.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( + registry.registerMigration(HexBlocks.QUENCHED_ALLAY.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( () -> MediaConstants.QUENCHED_BLOCK_UNIT, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, s )); - registry.register(i -> i instanceof HexHolderItem, HEX_HOLDER, CCHexHolder.ItemBased::new); + registry.registerMigration(modLoc("hex_holder"), ItemHexHolderComponent.COMPONENT_TYPE); - registry.register(i -> i instanceof VariantItem, VARIANT_ITEM, CCVariantItem.ItemBased::new); + registry.registerMigration(modLoc("variant_item"), VariantItemComponent.COMPONENT_TYPE); } private ComponentFactory wrapItemEntityDelegate(Function cir) { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java index 3a6b1af179..f25407916d 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java @@ -4,6 +4,8 @@ import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import org.apache.logging.log4j.util.TriConsumer; @@ -14,39 +16,38 @@ public class FabricPacketHandler { public static void init() { ServerPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternC2S.ID, - makeServerBoundHandler(MsgNewSpellPatternC2S::deserialize, MsgNewSpellPatternC2S::handle)); + makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); ServerPlayNetworking.registerGlobalReceiver( - MsgShiftScrollC2S.ID, makeServerBoundHandler(MsgShiftScrollC2S::deserialize, MsgShiftScrollC2S::handle)); + MsgShiftScrollC2S.ID, makeServerBoundHandler(MsgShiftScrollC2S::handle)); } - private static ServerPlayNetworking.PlayChannelHandler makeServerBoundHandler( - Function decoder, TriConsumer handle) { - return (server, player, _handler, buf, _responseSender) -> handle.accept(decoder.apply(buf), server, player); + private static ServerPlayNetworking.PlayPayloadHandler makeServerBoundHandler( + TriConsumer handle) { + return (payload, context) -> handle.accept(payload, context.server(), context.player()); } public static void initClient() { ClientPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternS2C.ID, - makeClientBoundHandler(MsgNewSpellPatternS2C::deserialize, MsgNewSpellPatternS2C::handle)); + makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); ClientPlayNetworking.registerGlobalReceiver( - MsgBlinkS2C.ID, makeClientBoundHandler(MsgBlinkS2C::deserialize, MsgBlinkS2C::handle)); + MsgBlinkS2C.ID, makeClientBoundHandler(MsgBlinkS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgCastParticleS2C.ID, - makeClientBoundHandler(MsgCastParticleS2C::deserialize, MsgCastParticleS2C::handle)); + makeClientBoundHandler(MsgCastParticleS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgOpenSpellGuiS2C.ID, - makeClientBoundHandler(MsgOpenSpellGuiS2C::deserialize, MsgOpenSpellGuiS2C::handle)); + makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgBeepS2C.ID, - makeClientBoundHandler(MsgBeepS2C::deserialize, MsgBeepS2C::handle)); + makeClientBoundHandler(MsgBeepS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgNewWallScrollS2C.ID, - makeClientBoundHandler(MsgNewWallScrollS2C::deserialize, MsgNewWallScrollS2C::handle)); + makeClientBoundHandler(MsgNewWallScrollS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgRecalcWallScrollDisplayS2C.ID, - makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::deserialize, MsgRecalcWallScrollDisplayS2C::handle)); + makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgNewSpiralPatternsS2C.ID, - makeClientBoundHandler(MsgNewSpiralPatternsS2C::deserialize, MsgNewSpiralPatternsS2C::handle)); + makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgClearSpiralPatternsS2C.ID, - makeClientBoundHandler(MsgClearSpiralPatternsS2C::deserialize, MsgClearSpiralPatternsS2C::handle)); + makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); } - private static ClientPlayNetworking.PlayChannelHandler makeClientBoundHandler( - Function decoder, Consumer handler) { - return (_client, _handler, buf, _responseSender) -> handler.accept(decoder.apply(buf)); + private static ClientPlayNetworking.PlayPayloadHandler makeClientBoundHandler(Consumer handler) { + return (payload, context) -> handler.accept(payload); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java index c5738b03f3..a4a8897afe 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.fabric.xplat; import at.petrak.hexcasting.api.client.ClientCastingStack; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import at.petrak.hexcasting.fabric.client.ExtendedTexture; import at.petrak.hexcasting.fabric.interop.trinkets.TrinketsApiInterop; @@ -32,7 +31,7 @@ public class FabricClientXplatImpl implements IClientXplatAbstractions { @Override - public void sendPacketToServer(IMessage packet) { + public void sendPacketToServer(CustomPacketPayload packet) { ClientPlayNetworking.send(packet.getFabricId(), packet.toBuf()); } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index da6a443908..0c60c91e09 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -21,8 +21,8 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; +import at.petrak.hexcasting.common.components.PigmentItemComponent; import at.petrak.hexcasting.common.lib.HexRegistries; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import at.petrak.hexcasting.fabric.interop.trinkets.TrinketsApiInterop; import at.petrak.hexcasting.fabric.recipe.FabricUnsealedIngredient; @@ -38,7 +38,6 @@ import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; import net.fabricmc.fabric.api.event.player.UseItemCallback; import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder; -import net.fabricmc.fabric.api.item.v1.FabricItemSettings; import net.fabricmc.fabric.api.networking.v1.PlayerLookup; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder; @@ -52,6 +51,7 @@ import net.minecraft.advancements.critereon.ItemPredicate; import net.minecraft.core.*; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; @@ -117,21 +117,21 @@ public void initPlatformSpecific() { // } @Override - public void sendPacketToPlayer(ServerPlayer target, IMessage packet) { + public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { ServerPlayNetworking.send(target, packet.getFabricId(), packet.toBuf()); } @Override - public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, IMessage packet) { + public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet) { sendPacketToPlayers(PlayerLookup.around(dimension, pos, radius), packet); } @Override - public void sendPacketTracking(Entity entity, IMessage packet) { + public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { sendPacketToPlayers(PlayerLookup.tracking(entity), packet); } - private void sendPacketToPlayers(Collection players, IMessage packet) { + private void sendPacketToPlayers(Collection players, CustomPacketPayload packet) { var pkt = ServerPlayNetworking.createS2CPacket(packet.getFabricId(), packet.toBuf()); for (var p : players) { p.connection.send(pkt); @@ -139,7 +139,7 @@ private void sendPacketToPlayers(Collection players, IMessage pack } @Override - public Packet toVanillaClientboundPacket(IMessage message) { + public Packet toVanillaClientboundPacket(CustomPacketPayload message) { return ServerPlayNetworking.createS2CPacket(message.getFabricId(), message.toBuf()); } @@ -276,7 +276,7 @@ ADHexHolder findHexHolder(ItemStack stack) { @Override public boolean isPigment(ItemStack stack) { - return HexCardinalComponents.PIGMENT.isProvidedBy(stack); + return stack.get(PigmentItemComponent.COMPONENT_TYPE) != null; } @Override @@ -369,18 +369,18 @@ public boolean isCorrectTierForDrops(Tier tier, BlockState bs) { @Override public Item.Properties addEquipSlotFabric(EquipmentSlot slot) { - return new FabricItemSettings().equipmentSlot(s -> slot); + return new Item.Properties().equipmentSlot((e, s) -> slot); } private static final IXplatTags TAGS = new IXplatTags() { @Override public TagKey amethystDust() { - return HexTags.Items.create(new ResourceLocation("c", "amethyst_dusts")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("c", "amethyst_dusts")); } @Override public TagKey gems() { - return HexTags.Items.create(new ResourceLocation("c", "gems")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("c", "gems")); } }; @@ -394,7 +394,7 @@ public LootItemCondition.Builder isShearsCondition() { return AnyOfCondition.anyOf( MatchTool.toolMatches(ItemPredicate.Builder.item().of(Items.SHEARS)), MatchTool.toolMatches(ItemPredicate.Builder.item().of( - HexTags.Items.create(new ResourceLocation("c", "shears")))) + HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("c", "shears")))) ); } diff --git a/Fabric/src/main/resources/fabricasting.accesswidener b/Fabric/src/main/resources/fabricasting.accesswidener index 59935daf3e..0677ad09ea 100644 --- a/Fabric/src/main/resources/fabricasting.accesswidener +++ b/Fabric/src/main/resources/fabricasting.accesswidener @@ -15,4 +15,7 @@ accessible method net/minecraft/world/item/context/UseOnContext (Lnet/min accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; accessible class net/minecraft/client/resources/model/ModelManager$ReloadState +accessible class net/minecraft/network/protocol/game/ClientboundAddEntityPacket +accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V +accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket write (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V accessible method net/minecraft/world/level/block/state/properties/BlockSetType register (Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; \ No newline at end of file diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java index 0e932b55ea..b1bcb03122 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java @@ -1,21 +1,26 @@ package at.petrak.hexcasting.forge.network; import at.petrak.hexcasting.api.player.AltioraAbility; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.Nullable; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public record MsgAltioraUpdateAck(@Nullable AltioraAbility altiora) implements IMessage { - public static final ResourceLocation ID = modLoc("altiora"); +public record MsgAltioraUpdateAck(@Nullable AltioraAbility altiora) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec( + MsgAltioraUpdateAck::serialize, + MsgAltioraUpdateAck::deserialize + ); + public static final Type ID = new Type<>(modLoc("altiora")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -30,7 +35,6 @@ public static MsgAltioraUpdateAck deserialize(ByteBuf buffer) { return new MsgAltioraUpdateAck(new AltioraAbility(grace)); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeBoolean(this.altiora != null); if (this.altiora != null) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java index c9d24606fc..e54f38cc41 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java @@ -1,10 +1,11 @@ package at.petrak.hexcasting.forge.network; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; @@ -14,11 +15,15 @@ /** * Sent server->client to synchronize the status of a brainswept mob. */ -public record MsgBrainsweepAck(int target) implements IMessage { - public static final ResourceLocation ID = modLoc("sweep"); +public record MsgBrainsweepAck(int target) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec( + MsgBrainsweepAck::serialize, + MsgBrainsweepAck::deserialize + ); + public static final Type ID = new Type<>(modLoc("sweep")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } @@ -29,7 +34,6 @@ public static MsgBrainsweepAck deserialize(ByteBuf buffer) { return new MsgBrainsweepAck(target); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeInt(target); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java index c38266b1ae..bdc8b7a864 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java @@ -1,11 +1,12 @@ package at.petrak.hexcasting.forge.network; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -13,23 +14,22 @@ /** * Sent server->client to synchronize the status of the sentinel. */ -public record MsgPigmentUpdateAck(FrozenPigment update) implements IMessage { - public static final ResourceLocation ID = modLoc("color"); +public record MsgPigmentUpdateAck(FrozenPigment update) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgPigmentUpdateAck::serialize, MsgPigmentUpdateAck::deserialize); + + public static final Type ID = new Type<>(modLoc("color")); @Override - public ResourceLocation getFabricId() { - return ID; - } + public Type type() { return ID; } public static MsgPigmentUpdateAck deserialize(ByteBuf buffer) { var buf = new FriendlyByteBuf(buffer); - var tag = buf.readAnySizeNbt(); + var tag = buf.readNbt(); var colorizer = FrozenPigment.fromNBT(tag); return new MsgPigmentUpdateAck(colorizer); } - @Override public void serialize(FriendlyByteBuf buf) { buf.writeNbt(this.update.serializeToNBT()); } @@ -45,4 +45,6 @@ public void run() { } }); } + + } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java index dc8f712d8e..653a020ad7 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java @@ -1,12 +1,13 @@ package at.petrak.hexcasting.forge.network; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.xplat.IXplatAbstractions; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.phys.Vec3; @@ -18,11 +19,15 @@ /** * Sent server->client to synchronize the status of the sentinel. */ -public record MsgSentinelStatusUpdateAck(@Nullable Sentinel update) implements IMessage { - public static final ResourceLocation ID = modLoc("sntnl"); +public record MsgSentinelStatusUpdateAck(@Nullable Sentinel update) implements CustomPacketPayload { + public static final StreamCodec CODEC = CustomPacketPayload.codec( + MsgSentinelStatusUpdateAck::serialize, + MsgSentinelStatusUpdateAck::deserialize + ); + public static final Type ID = new Type<>(modLoc("sntnl")); @Override - public ResourceLocation getFabricId() { + public Type type() { return ID; } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index d33c2654b0..e1f8f9a867 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.forge.xplat; import at.petrak.hexcasting.api.client.ClientCastingStack; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.network.ForgePacketHandler; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; @@ -21,7 +20,7 @@ public class ForgeClientXplatImpl implements IClientXplatAbstractions { @Override - public void sendPacketToServer(IMessage packet) { + public void sendPacketToServer(CustomPacketPayload packet) { ForgePacketHandler.getNetwork().sendToServer(packet); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index 9d9188599d..f325aa003b 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -25,7 +25,6 @@ import at.petrak.hexcasting.common.lib.hex.HexContinuationTypes; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import at.petrak.hexcasting.common.msgs.IMessage; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; @@ -47,6 +46,7 @@ import net.minecraft.nbt.ListTag; import net.minecraft.nbt.Tag; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; @@ -363,24 +363,24 @@ public ColorProvider getColorProvider(FrozenPigment pigment) { } @Override - public void sendPacketToPlayer(ServerPlayer target, IMessage packet) { + public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { ForgePacketHandler.getNetwork().send(PacketDistributor.PLAYER.with(() -> target), packet); } @Override - public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, IMessage packet) { + public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet) { ForgePacketHandler.getNetwork().send(PacketDistributor.NEAR.with(() -> new PacketDistributor.TargetPoint( pos.x, pos.y, pos.z, radius * radius, dimension.dimension() )), packet); } @Override - public void sendPacketTracking(Entity entity, IMessage packet) { + public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { ForgePacketHandler.getNetwork().send(PacketDistributor.TRACKING_ENTITY.with(() -> entity), packet); } @Override - public Packet toVanillaClientboundPacket(IMessage message) { + public Packet toVanillaClientboundPacket(CustomPacketPayload message) { //noinspection unchecked return (Packet) ForgePacketHandler.getNetwork().toVanillaPacket(message, NetworkDirection.PLAY_TO_CLIENT); } From c4ed240ee21a15b3255bc38411f501e3319f4c11 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Tue, 25 Nov 2025 03:24:25 -0600 Subject: [PATCH 09/51] * More attempts to fix networking * Other fixes here and there (fixed up some whole minor folders so that's pretty cool) * Fixed NBTUtils! --- Common/build.gradle | 4 + .../block/circle/BlockAbstractImpetus.java | 7 + .../circles/BlockEntityAbstractImpetus.java | 8 +- .../api/casting/eval/CastingEnvironment.java | 2 +- .../casting/eval/env/PlayerBasedCastEnv.java | 4 +- .../petrak/hexcasting/api/utils/HexUtils.kt | 9 ++ .../petrak/hexcasting/api/utils/NBTHelper.kt | 130 ++++++++++-------- .../hexcasting/client/gui/GuiSpellcasting.kt | 4 +- .../common/blocks/BlockConjured.java | 3 +- .../blocks/akashic/AkashicFloodfiller.java | 7 + .../blocks/akashic/BlockAkashicBookshelf.java | 2 +- .../blocks/akashic/BlockAkashicLigature.java | 12 ++ .../impetuses/BlockEntityLookingImpetus.java | 11 +- .../impetuses/BlockEntityRedstoneImpetus.java | 5 +- .../impetuses/BlockLookingImpetus.java | 9 ++ .../impetuses/BlockRedstoneImpetus.java | 2 +- .../decoration/BlockAmethystDirectional.java | 8 ++ .../blocks/decoration/BlockHexDoor.java | 2 +- .../decoration/BlockHexFallingBlock.java | 16 +++ .../blocks/decoration/BlockHexFenceGate.java | 2 +- .../decoration/BlockHexPressurePlate.java | 4 +- .../blocks/decoration/BlockHexTrapdoor.java | 2 +- .../blocks/decoration/BlockHexWoodButton.java | 2 +- .../command/ListPerWorldPatternsCommand.java | 10 +- .../common/entities/EntityWallScroll.java | 55 +++++--- .../common/items/storage/ItemScroll.java | 27 ++-- .../hexcasting/common/lib/HexBlocks.java | 31 ++--- .../common/recipe/BrainsweepRecipe.java | 34 ++++- .../xplat/IClientXplatAbstractions.java | 1 + .../hexcasting/xplat/IXplatAbstractions.java | 10 +- .../main/resources/architectury.common.json | 3 + .../fabric/xplat/FabricClientXplatImpl.java | 3 +- Neoforge/build.gradle | 20 ++- Neoforge/gradle.properties | 2 +- .../forge/ForgeHexClientInitializer.java | 11 +- .../hexcasting/forge/ForgeHexConfig.java | 56 ++++---- .../hexcasting/forge/ForgeHexInitializer.java | 71 +++++----- .../forge/cap/ForgeCapabilityHandler.java | 76 +++++----- .../forge/cap/ForgeImpetusCapability.java | 2 +- .../hexcasting/forge/cap/HexCapabilities.java | 48 +++++-- .../interop/curios/CuriosApiInterop.java | 12 +- .../forge/network/ForgePacketHandler.java | 79 ++++------- .../forge/recipe/ForgeUnsealedIngredient.java | 19 ++- .../forge/xplat/ForgeClientXplatImpl.java | 3 +- .../forge/xplat/ForgeXplatImpl.java | 130 ++++++++---------- build.gradle | 4 +- 46 files changed, 538 insertions(+), 424 deletions(-) create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java create mode 100644 Common/src/main/resources/architectury.common.json diff --git a/Common/build.gradle b/Common/build.gradle index 91a09e78b5..5bcf413c9f 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -30,6 +30,10 @@ repositories { maven { url = "https://maven.terraformersmc.com/releases/" } } +loom { + accessWidenerPath = file("src/main/resources/hexplat.accesswidener") +} + dependencies { // === MANDATORY DEPS === compileOnly "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" diff --git a/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java index d5197fce68..5f5f499bea 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/block/circle/BlockAbstractImpetus.java @@ -7,6 +7,9 @@ import net.minecraft.core.Direction; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.RandomSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; @@ -17,6 +20,7 @@ import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.DirectionProperty; +import net.minecraft.world.phys.BlockHitResult; import java.util.EnumSet; @@ -58,6 +62,9 @@ public float particleHeight(BlockPos pos, BlockState bs, Level world) { return 0.5f; } + public abstract InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, + BlockHitResult pHit); + @Override public void tick(BlockState pState, ServerLevel pLevel, BlockPos pPos, RandomSource pRandom) { if (pLevel.getBlockEntity(pPos) instanceof BlockEntityAbstractImpetus tile && pState.getValue(ENERGIZED)) { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index ac8bf92d0d..6cc394468b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -292,9 +292,9 @@ protected void saveModData(CompoundTag tag) { tag.putLong(TAG_MEDIA, this.media); if (this.displayMsg != null && this.displayItem != null) { - tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg)); + tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg, level.registryAccess())); var itemTag = new CompoundTag(); - this.displayItem.save(itemTag); + this.displayItem.save(level.registryAccess(), itemTag); tag.put(TAG_ERROR_DISPLAY, itemTag); } if (this.pigment != null) @@ -315,8 +315,8 @@ protected void loadModData(CompoundTag tag) { } if (tag.contains(TAG_ERROR_MSG, Tag.TAG_STRING) && tag.contains(TAG_ERROR_DISPLAY, Tag.TAG_COMPOUND)) { - var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG)); - var display = ItemStack.of(tag.getCompound(TAG_ERROR_DISPLAY)); + var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG), level.registryAccess()); + var display = ItemStack.parseOptional(level.registryAccess(), tag.getCompound(TAG_ERROR_DISPLAY)); this.displayMsg = msg; this.displayItem = display; } else { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java index 9157063a97..8862ad4934 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java @@ -229,7 +229,7 @@ public void postCast(CastingImage image) { * Return whether this env can cast great spells. */ public boolean isEnlightened() { - var adv = this.world.getServer().getAdvancements().getAdvancement(modLoc("enlightenment")); + var adv = this.world.getServer().getAdvancements().get(modLoc("enlightenment")); if (adv == null) return false; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java index 10ff3b052b..148250e4bd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java @@ -128,7 +128,7 @@ protected long extractMediaFromInventory(long costLeft, boolean allowOvercast, b } else { var mediaAbleToCastFromHP = this.caster.getHealth() * mediaToHealth; - Mishap.trulyHurt(this.caster, this.caster.damageSources().source(HexDamageTypes.OVERCAST), (float) healthToRemove); + Mishap.trulyHurt(this.caster, this.world.damageSources().source(HexDamageTypes.OVERCAST), (float) healthToRemove); var actuallyTaken = Mth.ceil(mediaAbleToCastFromHP - (this.caster.getHealth() * mediaToHealth)); @@ -152,7 +152,7 @@ protected long extractMediaFromInventory(long costLeft, boolean allowOvercast, b } protected boolean canOvercast() { - var adv = this.world.getServer().getAdvancements().getAdvancement(modLoc("y_u_no_cast_angy")); + var adv = this.world.getServer().getAdvancements().get(modLoc("y_u_no_cast_angy")); var advs = this.caster.getAdvancements(); return advs.getOrStartProgress(adv).isDone(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt index 7629783a56..8dcfea6f4e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt @@ -7,6 +7,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.casting.math.HexCoord import net.minecraft.ChatFormatting +import net.minecraft.core.HolderLookup import net.minecraft.core.Registry import net.minecraft.nbt.* import net.minecraft.network.chat.Component @@ -16,6 +17,7 @@ import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation import net.minecraft.tags.TagKey import net.minecraft.world.InteractionHand +import net.minecraft.world.item.ItemStack import net.minecraft.world.phys.Vec2 import net.minecraft.world.phys.Vec3 import java.lang.ref.WeakReference @@ -290,6 +292,12 @@ fun List.zipWithDefault(array: ByteArray, default: (idx: Int) -> Byte): L // return out //} +fun ItemStack.serializeToNBT(provider: HolderLookup.Provider): CompoundTag { + val out = CompoundTag() + save(provider, out) + return out +} + @Suppress("UNCHECKED_CAST") @Throws(IllegalArgumentException::class) fun Tag.downcast(type: TagType): T { @@ -313,3 +321,4 @@ fun isOfTag(registry: Registry, loc: ResourceLocation, tag: TagKey): B val key = ResourceKey.create(registry.key(), loc); return isOfTag(registry, key, tag) } + diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt index f72ee92e31..9bf750fb6c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt @@ -4,8 +4,11 @@ package at.petrak.hexcasting.api.utils +import at.petrak.hexcasting.common.components.VariantItemComponent +import net.minecraft.core.component.DataComponents import net.minecraft.nbt.* import net.minecraft.world.item.ItemStack +import net.minecraft.world.item.component.CustomData import java.util.* private inline fun T?.getIf(key: K, predicate: T?.(K) -> Boolean, get: T.(K) -> E): E? = @@ -192,93 +195,108 @@ val Tag.asUUID: UUID get() = if (this is IntArrayTag && this.size == 4) NbtUtils // Checks for containment -fun ItemStack.hasNumber(key: String) = tag.hasNumber(key) -fun ItemStack.hasByte(key: String) = tag.hasByte(key) -fun ItemStack.hasShort(key: String) = tag.hasShort(key) -fun ItemStack.hasInt(key: String) = tag.hasInt(key) -fun ItemStack.hasLong(key: String) = tag.hasLong(key) -fun ItemStack.hasFloat(key: String) = tag.hasFloat(key) -fun ItemStack.hasDouble(key: String) = tag.hasDouble(key) -fun ItemStack.hasLongArray(key: String) = tag.hasLongArray(key) -fun ItemStack.hasIntArray(key: String) = tag.hasIntArray(key) -fun ItemStack.hasByteArray(key: String) = tag.hasByteArray(key) -fun ItemStack.hasCompound(key: String) = tag.hasCompound(key) -fun ItemStack.hasString(key: String) = tag.hasString(key) -fun ItemStack.hasList(key: String) = tag.hasList(key) -fun ItemStack.hasList(key: String, objType: Int) = tag.hasList(key, objType) -fun ItemStack.hasList(key: String, objType: Byte) = tag.hasList(key, objType) -fun ItemStack.hasUUID(key: String) = tag.hasUUID(key) +fun ItemStack.hasNumber(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasNumber(key) +fun ItemStack.hasByte(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasByte(key) +fun ItemStack.hasShort(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasShort(key) +fun ItemStack.hasInt(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasInt(key) +fun ItemStack.hasLong(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasLong(key) +fun ItemStack.hasFloat(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasFloat(key) +fun ItemStack.hasDouble(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasDouble(key) +fun ItemStack.hasLongArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasLongArray(key) +fun ItemStack.hasIntArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasIntArray(key) +fun ItemStack.hasByteArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasByteArray(key) +fun ItemStack.hasCompound(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasCompound(key) +fun ItemStack.hasString(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasString(key) +fun ItemStack.hasList(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key) +fun ItemStack.hasList(key: String, objType: Int) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key, objType) +fun ItemStack.hasList(key: String, objType: Byte) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key, objType) +fun ItemStack.hasUUID(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasUUID(key) @JvmName("contains") -fun ItemStack.containsTag(key: String) = tag.contains(key) +fun ItemStack.containsTag(key: String) = get(DataComponents.CUSTOM_DATA)?.contains(key) @JvmName("contains") -fun ItemStack.containsTag(key: String, id: Byte) = tag.contains(key, id) +fun ItemStack.containsTag(key: String, id: Byte) = get(DataComponents.CUSTOM_DATA)?.copyTag().contains(key, id) @JvmName("contains") -fun ItemStack.containsTag(key: String, id: Int) = tag.contains(key, id) +fun ItemStack.containsTag(key: String, id: Int) = get(DataComponents.CUSTOM_DATA)?.copyTag().contains(key, id) + +fun ItemStack.findVariantHolder() = get(VariantItemComponent.COMPONENT_TYPE) + // Puts +private fun ItemStack.updateCustomData(block: CompoundTag.() -> Unit) { + val old = this.get(DataComponents.CUSTOM_DATA) + val tag = (old?.copyTag() ?: CompoundTag()).apply(block) + this.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)) +} -fun ItemStack.putBoolean(key: String, value: Boolean) = orCreateTag.putBoolean(key, value) -fun ItemStack.putByte(key: String, value: Byte) = orCreateTag.putByte(key, value) -fun ItemStack.putShort(key: String, value: Short) = orCreateTag.putShort(key, value) -fun ItemStack.putInt(key: String, value: Int) = orCreateTag.putInt(key, value) -fun ItemStack.putLong(key: String, value: Long) = orCreateTag.putLong(key, value) -fun ItemStack.putFloat(key: String, value: Float) = orCreateTag.putFloat(key, value) -fun ItemStack.putDouble(key: String, value: Double) = orCreateTag.putDouble(key, value) - -fun ItemStack.putLongArray(key: String, value: LongArray) = orCreateTag.putLongArray(key, value) -fun ItemStack.putIntArray(key: String, value: IntArray) = orCreateTag.putIntArray(key, value) -fun ItemStack.putByteArray(key: String, value: ByteArray) = orCreateTag.putByteArray(key, value) -fun ItemStack.putCompound(key: String, value: CompoundTag) = putTag(key, value) -fun ItemStack.putString(key: String, value: String) = orCreateTag.putString(key, value) -fun ItemStack.putList(key: String, value: ListTag) = putTag(key, value) -fun ItemStack.putUUID(key: String, value: UUID) = orCreateTag.putUUID(key, value) - -@JvmName("put") -fun ItemStack.putTag(key: String, value: Tag) = orCreateTag.put(key, value) +fun ItemStack.putBoolean(key: String, value: Boolean) = updateCustomData { putBoolean(key, value) }fun ItemStack.putByte(key: String, value: Byte) = updateCustomData { putByte(key, value) } +fun ItemStack.putShort(key: String, value: Short) = updateCustomData { putShort(key, value) } +fun ItemStack.putInt(key: String, value: Int) = updateCustomData { putInt(key, value) } +fun ItemStack.putLong(key: String, value: Long) = updateCustomData { putLong(key, value) } +fun ItemStack.putFloat(key: String, value: Float) = updateCustomData { putFloat(key, value) } +fun ItemStack.putDouble(key: String, value: Double) = updateCustomData { putDouble(key, value) } + +fun ItemStack.putLongArray(key: String, value: LongArray) = updateCustomData { putLongArray(key, value) } +fun ItemStack.putIntArray(key: String, value: IntArray) = updateCustomData { putIntArray(key, value) } +fun ItemStack.putByteArray(key: String, value: ByteArray) = updateCustomData { putByteArray(key, value) } +fun ItemStack.putCompound(key: String, value: CompoundTag) = updateCustomData { put(key, value) } +fun ItemStack.putString(key: String, value: String) = updateCustomData { putString(key, value) } +fun ItemStack.putList(key: String, value: ListTag) = updateCustomData { put(key, value) } +fun ItemStack.putUUID(key: String, value: UUID) = updateCustomData { putUUID(key, value) } // Remove -fun ItemStack.remove(key: String) = removeTagKey(key) +fun ItemStack.remove(key: String) = updateCustomData { remove(key) } // Gets +private fun ItemStack.customTag(): CompoundTag = + get(DataComponents.CUSTOM_DATA)?.copyTag() ?: CompoundTag() + + @JvmOverloads -fun ItemStack.getBoolean(key: String, defaultExpected: Boolean = false) = tag.getBoolean(key, defaultExpected) +fun ItemStack.getBoolean(key: String, defaultExpected: Boolean = false) = + customTag().getBoolean(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getByte(key: String, defaultExpected: Byte = 0) = tag.getByte(key, defaultExpected) +fun ItemStack.getByte(key: String, defaultExpected: Byte = 0) = + customTag().getByte(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getShort(key: String, defaultExpected: Short = 0) = tag.getShort(key, defaultExpected) +fun ItemStack.getShort(key: String, defaultExpected: Short = 0) = + customTag().getShort(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getInt(key: String, defaultExpected: Int = 0) = tag.getInt(key, defaultExpected) +fun ItemStack.getInt(key: String, defaultExpected: Int = 0) = + customTag().getInt(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getLong(key: String, defaultExpected: Long = 0) = tag.getLong(key, defaultExpected) +fun ItemStack.getLong(key: String, defaultExpected: Long = 0) = + customTag().getLong(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getFloat(key: String, defaultExpected: Float = 0f) = tag.getFloat(key, defaultExpected) +fun ItemStack.getFloat(key: String, defaultExpected: Float = 0f) = + customTag().getFloat(key).let { if (customTag().contains(key)) it else defaultExpected } @JvmOverloads -fun ItemStack.getDouble(key: String, defaultExpected: Double = 0.0) = tag.getDouble(key, defaultExpected) +fun ItemStack.getDouble(key: String, defaultExpected: Double = 0.0) = + customTag().getDouble(key).let { if (customTag().contains(key)) it else defaultExpected } -fun ItemStack.getLongArray(key: String) = tag.getLongArray(key) -fun ItemStack.getIntArray(key: String) = tag.getIntArray(key) -fun ItemStack.getByteArray(key: String) = tag.getByteArray(key) -fun ItemStack.getCompound(key: String) = tag.getCompound(key) -fun ItemStack.getString(key: String) = tag.getString(key) -fun ItemStack.getList(key: String, objType: Int) = tag.getList(key, objType) -fun ItemStack.getUUID(key: String) = tag.getUUID(key) +fun ItemStack.getLongArray(key: String) = customTag().getLongArray(key) +fun ItemStack.getIntArray(key: String) = customTag().getIntArray(key) +fun ItemStack.getByteArray(key: String) = customTag().getByteArray(key) +fun ItemStack.getCompound(key: String) = customTag().getCompound(key) +fun ItemStack.getString(key: String) = customTag().getString(key) +fun ItemStack.getList(key: String, objType: Int) = customTag().getList(key, objType) +fun ItemStack.getUUID(key: String) = customTag().getUUID(key) @JvmName("get") -fun ItemStack.getTag(key: String) = tag.get(key) +fun ItemStack.getTag(key: String) = customTag().get(key) // Get-or-create -fun ItemStack.getOrCreateCompound(key: String): CompoundTag = getOrCreateTagElement(key) -fun ItemStack.getOrCreateList(key: String, objType: Byte) = orCreateTag.getOrCreateList(key, objType) -fun ItemStack.getOrCreateList(key: String, objType: Int) = orCreateTag.getOrCreateList(key, objType) +fun ItemStack.getOrCreateCompound(key: String): CompoundTag = customTag().getOrCreateCompound(key) +fun ItemStack.getOrCreateList(key: String, objType: Byte) = customTag().getOrCreateList(key, objType) +fun ItemStack.getOrCreateList(key: String, objType: Int) = customTag().getOrCreateList(key, objType) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt index 0a9f66cd2b..0999914787 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt @@ -291,8 +291,8 @@ class GuiSpellcasting constructor( return false } - override fun mouseScrolled(pMouseX: Double, pMouseY: Double, pDelta: Double): Boolean { - super.mouseScrolled(pMouseX, pMouseY, pDelta) + override fun mouseScrolled(pDelta: Double, e: Double, f: Double, g: Double): Boolean { + super.mouseScrolled(pDelta, e, f, g) val mouseHandler = Minecraft.getInstance().mouseHandler diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java index 078b819a3c..13c9c2c831 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java @@ -33,10 +33,11 @@ public BlockConjured(Properties properties) { } @Override - public void playerWillDestroy(Level pLevel, BlockPos pPos, BlockState pState, Player pPlayer) { + public BlockState playerWillDestroy(Level pLevel, BlockPos pPos, BlockState pState, Player pPlayer) { super.playerWillDestroy(pLevel, pPos, pState, pPlayer); // For some reason the block doesn't play breaking noises. So we fix that! pPlayer.playSound(SoundEvents.AMETHYST_BLOCK_BREAK, 1f, 1f); + return pState; } @Nullable diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/AkashicFloodfiller.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/AkashicFloodfiller.java index ab810391af..56d6cfffc6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/AkashicFloodfiller.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/AkashicFloodfiller.java @@ -3,8 +3,12 @@ import at.petrak.hexcasting.api.misc.TriPredicate; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; import org.jetbrains.annotations.Nullable; import java.util.ArrayDeque; @@ -68,4 +72,7 @@ static boolean canItBeFloodedThrough(BlockPos pos, BlockState state, Level world return flooder.canBeFloodedThrough(pos, state, world); } + + InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, + BlockHitResult pHit); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java index 39545fd968..aca542ab5e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java @@ -40,7 +40,7 @@ public BlockAkashicBookshelf(Properties p_49795_) { @Override public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, - BlockHitResult pHit) { + BlockHitResult pHit) { if (pLevel.getBlockEntity(pPos) instanceof BlockEntityAkashicBookshelf shelf) { var stack = pPlayer.getItemInHand(pHand); if (stack.getItem() instanceof ItemScroll scroll) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicLigature.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicLigature.java index c86019bd10..005b8069c7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicLigature.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicLigature.java @@ -1,9 +1,21 @@ package at.petrak.hexcasting.common.blocks.akashic; +import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; public class BlockAkashicLigature extends Block implements AkashicFloodfiller { public BlockAkashicLigature(Properties properties) { super(properties); } + + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java index 963d62a649..8d09edc54e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java @@ -16,6 +16,7 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; public class BlockEntityLookingImpetus extends BlockEntityAbstractImpetus { public static final int MAX_LOOK_AMOUNT = 30; @@ -35,8 +36,14 @@ public static void serverTick(Level level, BlockPos pos, BlockState bs, BlockEnt int prevLookAmt = self.lookAmount; int range = 20; - var players = level.getEntitiesOfClass(ServerPlayer.class, - new AABB(pos.offset(-range, -range, -range), pos.offset(range, range, range))); + AABB box = AABB.ofSize( + Vec3.atCenterOf(pos), // center of the cube + range * 2 + 1, + range * 2 + 1, + range * 2 + 1 + ); + + var players = level.getEntitiesOfClass(ServerPlayer.class, box); ServerPlayer looker = null; for (var player : players) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java index b776d156ce..c66c50b8e4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java @@ -8,6 +8,7 @@ import com.mojang.datafixers.util.Pair; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.Tag; @@ -17,6 +18,7 @@ import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; +import net.minecraft.world.item.component.ResolvableProfile; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; @@ -104,8 +106,7 @@ public void applyScryingLensOverlay(List> lines, if (!name.equals(cachedDisplayProfile) || cachedDisplayStack == null) { cachedDisplayProfile = name; var head = new ItemStack(Items.PLAYER_HEAD); - NBTHelper.put(head, "SkullOwner", NbtUtils.writeGameProfile(new CompoundTag(), name)); - head.getItem().verifyTagAfterLoad(head.getOrCreateTag()); + head.set(DataComponents.PROFILE, new ResolvableProfile(cachedDisplayProfile)); cachedDisplayStack = head; } lines.add(new Pair<>(cachedDisplayStack, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java index 6cb5a1c245..f99d278300 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java @@ -3,11 +3,15 @@ import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; import at.petrak.hexcasting.common.lib.HexBlockEntities; import net.minecraft.core.BlockPos; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityTicker; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; import org.jetbrains.annotations.Nullable; public class BlockLookingImpetus extends BlockAbstractImpetus { @@ -16,6 +20,11 @@ public BlockLookingImpetus(Properties p_49795_) { super(p_49795_); } + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java index fe4fb73e1b..ec3b4ceff1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java @@ -42,7 +42,7 @@ protected void createBlockStateDefinition(StateDefinition.Builder CODEC = BlockBehaviour.simpleCodec(BlockAmethystDirectional::new); + @Override + protected MapCodec codec() { + return CODEC; + } + public void onProjectileHit(Level level, BlockState state, BlockHitResult result, Projectile projectile) { if (!level.isClientSide) { BlockPos pos = result.getBlockPos(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java index 6bc4459c00..c94970d4fb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexDoor.java @@ -10,7 +10,7 @@ public class BlockHexDoor extends DoorBlock { public BlockHexDoor(Properties $$0) { - super($$0, HexBlockSetTypes.EDIFIED_WOOD); + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java new file mode 100644 index 0000000000..820077f8f7 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java @@ -0,0 +1,16 @@ +package at.petrak.hexcasting.common.blocks.decoration; + +import com.mojang.serialization.MapCodec; +import net.minecraft.world.level.block.FallingBlock; +import net.minecraft.world.level.block.state.BlockBehaviour; + +public class BlockHexFallingBlock extends FallingBlock { + public BlockHexFallingBlock(Properties props) { + super(props); + } + public static final MapCodec CODEC = BlockBehaviour.simpleCodec(BlockHexFallingBlock::new); + @Override + protected MapCodec codec() { + return CODEC; + } +} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java index 10fc89230e..a36a2a6c3f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java @@ -12,7 +12,7 @@ public class BlockHexFenceGate extends FenceGateBlock { public BlockHexFenceGate(Properties $$0) { - super($$0, WoodType.DARK_OAK); + super(WoodType.DARK_OAK, $$0); } @SoftImplement("forge") diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java index 5e6a517b1d..0017c066b1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexPressurePlate.java @@ -9,8 +9,8 @@ import net.minecraft.world.level.block.state.BlockState; public class BlockHexPressurePlate extends PressurePlateBlock { - public BlockHexPressurePlate(Sensitivity $$0, Properties $$1) { - super($$0, $$1, HexBlockSetTypes.EDIFIED_WOOD); + public BlockHexPressurePlate(Properties $$0) { + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java index 3e2620c59b..62d49a6eeb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexTrapdoor.java @@ -10,7 +10,7 @@ public class BlockHexTrapdoor extends TrapDoorBlock { public BlockHexTrapdoor(Properties $$0) { - super($$0, HexBlockSetTypes.EDIFIED_WOOD); + super(HexBlockSetTypes.EDIFIED_WOOD, $$0); } @SoftImplement("forge") diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java index 355f9edb9a..ecc45f4556 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java @@ -10,7 +10,7 @@ public class BlockHexWoodButton extends ButtonBlock { public BlockHexWoodButton(Properties $$0) { - super($$0, BlockSetType.DARK_OAK, 30, true); + super(BlockSetType.DARK_OAK,30, $$0); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java index f39e14d47f..8d722cde93 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java @@ -16,11 +16,13 @@ import net.minecraft.commands.arguments.EntityArgument; import net.minecraft.commands.arguments.ResourceLocationArgument; import net.minecraft.core.Registry; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; import java.util.Collection; import java.util.List; @@ -103,13 +105,13 @@ private static int giveAll(CommandSourceStack source, Collection t tag.put(ItemScroll.TAG_PATTERN, pat.serializeToNBT()); var stack = new ItemStack(HexItems.SCROLL_LARGE); - stack.setTag(tag); + stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); for (var player : targets) { var stackEntity = player.drop(stack, false); if (stackEntity != null) { stackEntity.setNoPickUpDelay(); - stackEntity.setThrower(player.getUUID()); + stackEntity.setThrower(player); } count++; @@ -137,7 +139,7 @@ private static int giveOne(CommandSourceStack source, Collection t tag.put(ItemScroll.TAG_PATTERN, pat.serializeToNBT()); var stack = new ItemStack(HexItems.SCROLL_LARGE); - stack.setTag(tag); + stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); source.sendSuccess(() -> Component.translatable( @@ -151,7 +153,7 @@ private static int giveOne(CommandSourceStack source, Collection t var stackEntity = player.drop(stack, false); if (stackEntity != null) { stackEntity.setNoPickUpDelay(); - stackEntity.setThrower(player.getUUID()); + stackEntity.setThrower(player); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java index 03d916c8f7..966c00f4fa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java @@ -3,6 +3,7 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.components.ItemIotaHolderComponent; import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; @@ -11,8 +12,10 @@ import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.network.syncher.EntityDataAccessor; @@ -30,6 +33,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameRules; import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; @@ -61,7 +65,8 @@ public EntityWallScroll(Level world, BlockPos pos, Direction dir, ItemStack scro } public void recalculateDisplay() { - CompoundTag patternTag = NBTHelper.getCompound(scroll, ItemScroll.TAG_PATTERN); + CompoundTag patternTag = scroll.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(ItemScroll.TAG_PATTERN); + var stuck = ItemStack.EMPTY.get(ItemIotaHolderComponent.COMPONENT_TYPE).iota(); if (patternTag != null) { this.pattern = HexPattern.fromNBT(patternTag); this.isAncient = NBTHelper.hasString(scroll, ItemScroll.TAG_OP_ID); @@ -72,9 +77,8 @@ public void recalculateDisplay() { } @Override - protected void defineSynchedData() { - super.defineSynchedData(); - this.entityData.define(SHOWS_STROKE_ORDER, false); + protected void defineSynchedData(SynchedEntityData.Builder builder) { + builder.define(SHOWS_STROKE_ORDER, false); } public boolean getShowsStrokeOrder() { @@ -85,16 +89,6 @@ public void setShowsStrokeOrder(boolean b) { this.entityData.set(SHOWS_STROKE_ORDER, b); } - @Override - public int getWidth() { - return 16 * blockSize; - } - - @Override - public int getHeight() { - return 16 * blockSize; - } - @Override public void dropItem(@Nullable Entity pBrokenEntity) { if (this.level().getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS)) { @@ -132,15 +126,37 @@ public InteractionResult interactAt(Player pPlayer, Vec3 pVec, InteractionHand p return super.interactAt(pPlayer, pVec, pHand); } + @Override + protected AABB calculateBoundingBox(BlockPos blockPos, Direction direction) { + double x = this.pos.getX() + 0.5; double y = this.pos.getY() + 0.5; double z = this.pos.getZ() + 0.5; + double uh = 0.46875; + double sizeX = (this.blockSize * 16) % 32 == 0 ? 0.5 : 0.0; + double sizeY = (this.blockSize * 16) % 32 == 0 ? 0.5 : 0.0; + + x -= (double) direction.getStepX() * 0.46875; + z -= (double) direction.getStepZ() * 0.46875; + y += sizeY; + double width = (double) this.blockSize * 16; double height = (double) this.blockSize * 16; double length = (double) this.blockSize * 16; + if (direction.getAxis() == Direction.Axis.Z) { + length = 1.0; + } else { + width = 1.0; + } + + width /= 32.0; + height /= 32.0; + length /= 32.0; + return new AABB(x - width, y - height, z - length, x + width, y + height, z + length); + } + @Override public void playPlacementSound() { this.playSound(SoundEvents.PAINTING_PLACE, 1.0F, 1.0F); } - @Override - public Packet getAddEntityPacket() { + public ClientboundCustomPayloadPacket getAddEntityPacket() { return IXplatAbstractions.INSTANCE.toVanillaClientboundPacket( - new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this), + new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this, this.blockSize, this.pos), pos, direction, scroll, getShowsStrokeOrder(), blockSize)); } @@ -160,7 +176,7 @@ public void readSpawnData(BlockPos pos, Direction dir, ItemStack scrollItem, @Override public void addAdditionalSaveData(CompoundTag tag) { tag.putByte("direction", (byte) this.direction.ordinal()); - tag.put("scroll", HexUtils.serializeToNBT(this.scroll)); + tag.put("scroll", HexUtils.serializeToNBT(this.scroll, this.level().registryAccess())); tag.putBoolean("showsStrokeOrder", this.getShowsStrokeOrder()); tag.putInt("blockSize", this.blockSize); super.addAdditionalSaveData(tag); @@ -169,7 +185,7 @@ public void addAdditionalSaveData(CompoundTag tag) { @Override public void readAdditionalSaveData(CompoundTag tag) { this.direction = Direction.values()[tag.getByte("direction")]; - this.scroll = ItemStack.of(tag.getCompound("scroll")); + this.scroll = ItemStack.parseOptional(this.level().registryAccess(), tag.getCompound("scroll")); this.blockSize = tag.getInt("blockSize"); this.setDirection(this.direction); @@ -186,7 +202,6 @@ public void moveTo(double pX, double pY, double pZ, float pYaw, float pPitch) { this.setPos(pX, pY, pZ); } - @Override public void lerpTo(double pX, double pY, double pZ, float pYaw, float pPitch, int pPosRotationIncrements, boolean pTeleport) { BlockPos blockpos = this.pos.offset((int) (pX - this.getX()), (int) (pY - this.getY()), (int) (pZ - this.getZ())); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java index 036e5129b4..3e104f94dc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java @@ -6,12 +6,15 @@ import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; +import at.petrak.hexcasting.common.components.ItemIotaHolderComponent; import at.petrak.hexcasting.common.entities.EntityWallScroll; +import at.petrak.hexcasting.common.lib.HexItemComponents; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.interop.inline.InlinePatternData; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -21,10 +24,12 @@ import net.minecraft.world.inventory.tooltip.TooltipComponent; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.gameevent.GameEvent; import org.jetbrains.annotations.Nullable; +import java.util.Objects; import java.util.Optional; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -53,14 +58,14 @@ public ItemScroll(Properties pProperties, int blockSize) { @Override public @Nullable CompoundTag readIotaTag(ItemStack stack) { - CompoundTag pattern = NBTHelper.getCompound(stack, TAG_PATTERN); + Iota pattern = Objects.requireNonNull(stack.get(ItemIotaHolderComponent.COMPONENT_TYPE)).iota(); if (pattern == null) { return null; } // We store only the data part of the iota; pretend the rest of it's there var out = new CompoundTag(); out.putString(HexIotaTypes.KEY_TYPE, "hexcasting:pattern"); - out.put(HexIotaTypes.KEY_DATA, pattern); + out.put(HexIotaTypes.KEY_DATA, pattern.serialize()); return out; } @@ -101,9 +106,9 @@ public InteractionResult useOn(UseOnContext ctx) { var scrollEntity = new EntityWallScroll(level, posInFront, direction, scrollStack, false, this.blockSize); // i guess - var stackTag = itemstack.getTag(); - if (stackTag != null) { - EntityType.updateCustomEntityTag(level, player, scrollEntity, stackTag); + var component = itemstack.get(ItemIotaHolderComponent.COMPONENT_TYPE); + if (component != null) { + EntityType.updateCustomEntityTag(level, player, scrollEntity, CustomData.of((CompoundTag) component.iota().serialize())); } if (scrollEntity.survives()) { @@ -128,12 +133,12 @@ protected boolean mayPlace(Player pPlayer, Direction pDirection, ItemStack pHang @Override public Component getName(ItemStack pStack) { var descID = this.getDescriptionId(pStack); - var ancientId = NBTHelper.getString(pStack, TAG_OP_ID); + var ancientId = pStack.get(DataComponents.CUSTOM_DATA).copyTag().getString(TAG_OP_ID); if (ancientId != null) { return Component.translatable(descID + ".of", Component.translatable("hexcasting.action." + ResourceLocation.tryParse(ancientId))); - } else if (NBTHelper.hasCompound(pStack, TAG_PATTERN)) { - var compound = NBTHelper.getCompound(pStack, ItemScroll.TAG_PATTERN); + } else if (pStack.get(DataComponents.CUSTOM_DATA).contains(TAG_PATTERN)) { + var compound = pStack.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(TAG_PATTERN); var patternLabel = Component.literal(""); if (compound != null) { var pattern = HexPattern.fromNBT(compound); @@ -149,12 +154,12 @@ public Component getName(ItemStack pStack) { @Override public Optional getTooltipImage(ItemStack stack) { - var compound = NBTHelper.getCompound(stack, ItemScroll.TAG_PATTERN); - if (compound != null) { + var compound = stack.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(TAG_PATTERN); + if (!compound.equals(new CompoundTag())) { var pattern = HexPattern.fromNBT(compound); return Optional.of(new PatternTooltip( pattern, - NBTHelper.hasString(stack, ItemScroll.TAG_OP_ID) + stack.get(DataComponents.CUSTOM_DATA).contains(TAG_PATTERN) ? PatternTooltipComponent.ANCIENT_BG : PatternTooltipComponent.PRISTINE_BG)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index 97e58a75e4..d8057f07b1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -20,10 +20,7 @@ import com.mojang.datafixers.util.Pair; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EntityType; -import net.minecraft.world.item.BlockItem; -import net.minecraft.world.item.CreativeModeTab; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.Rarity; +import net.minecraft.world.item.*; import net.minecraft.world.level.block.*; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.MapColor; @@ -65,7 +62,7 @@ public static void registerBlockCreativeTab(Consumer r, CreativeModeTab t private static BlockBehaviour.Properties slateish() { return BlockBehaviour.Properties - .copy(Blocks.DEEPSLATE_TILES) + .ofFullCopy(Blocks.DEEPSLATE_TILES) .strength(4f, 4f); } @@ -85,7 +82,7 @@ private static BlockBehaviour.Properties akashicWoodyHard() { private static BlockBehaviour.Properties woodyHard(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LOG) + .ofFullCopy(Blocks.OAK_LOG) .mapColor(color) .sound(SoundType.WOOD) .strength(3f, 4f); @@ -97,7 +94,7 @@ private static BlockBehaviour.Properties edifiedWoody() { private static BlockBehaviour.Properties woody(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LOG) + .ofFullCopy(Blocks.OAK_LOG) .mapColor(color) .sound(SoundType.WOOD) .strength(2f); @@ -105,7 +102,7 @@ private static BlockBehaviour.Properties woody(MapColor color) { private static BlockBehaviour.Properties leaves(MapColor color) { return BlockBehaviour.Properties - .copy(Blocks.OAK_LEAVES) + .ofFullCopy(Blocks.OAK_LEAVES) .strength(0.2F) .randomTicks() .sound(SoundType.GRASS) @@ -118,7 +115,7 @@ private static BlockBehaviour.Properties leaves(MapColor color) { // we have to make it emit light because otherwise it occludes itself and is always dark private static BlockBehaviour.Properties quenched() { return BlockBehaviour.Properties - .copy(Blocks.AMETHYST_BLOCK) + .ofFullCopy(Blocks.AMETHYST_BLOCK) .lightLevel($ -> 4) .noOcclusion(); } @@ -203,17 +200,17 @@ private static BlockBehaviour.Properties quenched() { public static final Block SLATE_BRICKS = blockItem("slate_bricks", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_BRICKS_SMALL = blockItem("slate_bricks_small", new Block(slateish().strength(2f, 4f))); public static final RotatedPillarBlock SLATE_PILLAR = blockItem("slate_pillar", new RotatedPillarBlock(slateish().strength(2f, 4f))); - public static final SandBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", - new SandBlock(0xff_b38ef3, BlockBehaviour.Properties.copy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) - .strength(0.5f).sound(SoundType.SAND))); + public static final BlockHexFallingBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", + new BlockHexFallingBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) + .strength(0.5f).sound(SoundType.SAND).mapColor(DyeColor.byFireworkColor(0xff_b38ef3)))); public static final AmethystBlock AMETHYST_TILES = blockItem("amethyst_tiles", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final AmethystBlock AMETHYST_BRICKS = blockItem("amethyst_bricks", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final AmethystBlock AMETHYST_BRICKS_SMALL = blockItem("amethyst_bricks_small", - new AmethystBlock(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final BlockAmethystDirectional AMETHYST_PILLAR = blockItem("amethyst_pillar", - new BlockAmethystDirectional(BlockBehaviour.Properties.copy(Blocks.AMETHYST_BLOCK))); + new BlockAmethystDirectional(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final Block SLATE_AMETHYST_TILES = blockItem("slate_amethyst_tiles", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_AMETHYST_BRICKS = blockItem("slate_amethyst_bricks", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_AMETHYST_BRICKS_SMALL = blockItem("slate_amethyst_bricks_small", new Block(slateish().strength(2f, 4f))); @@ -275,7 +272,7 @@ private static BlockBehaviour.Properties quenched() { public static final ButtonBlock EDIFIED_BUTTON = blockItem("edified_button", new BlockHexWoodButton(edifiedWoody().noOcclusion().noCollission())); public static final PressurePlateBlock EDIFIED_PRESSURE_PLATE = blockItem("edified_pressure_plate", - new BlockHexPressurePlate(PressurePlateBlock.Sensitivity.EVERYTHING, + new BlockHexPressurePlate( edifiedWoody().noOcclusion().noCollission())); public static final BlockAkashicLeaves AMETHYST_EDIFIED_LEAVES = blockItem("amethyst_edified_leaves", new BlockAkashicLeaves(leaves(MapColor.COLOR_PURPLE))); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index 8f6db1efb0..287a6816ec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -4,8 +4,12 @@ import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; import com.google.gson.JsonObject; +import com.mojang.serialization.MapCodec; +import net.minecraft.core.HolderLookup; import net.minecraft.core.RegistryAccess; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.GsonHelper; @@ -13,6 +17,7 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.world.item.crafting.RecipeInput; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.Level; @@ -28,7 +33,7 @@ public record BrainsweepRecipe( BrainsweepeeIngredient entityIn, long mediaCost, BlockState result -) implements Recipe { +) implements Recipe { public boolean matches(BlockState blockIn, Entity victim, ServerLevel level) { return this.blockIn.test(blockIn) && this.entityIn.test(victim, level); } @@ -55,17 +60,22 @@ public boolean matches(Container pContainer, Level pLevel) { return false; } - @Override - public ItemStack assemble(Container pContainer, RegistryAccess access) { - return ItemStack.EMPTY; - } + @Override + public ItemStack assemble(Container recipeInput, HolderLookup.Provider provider) { + return ItemStack.EMPTY; + } @Override public boolean canCraftInDimensions(int pWidth, int pHeight) { return false; } - @Override + @Override + public ItemStack getResultItem(HolderLookup.Provider provider) { + return null; + } + + @Override public ItemStack getResultItem(RegistryAccess registryAccess) { return ItemStack.EMPTY.copy(); } @@ -109,5 +119,15 @@ public void toNetwork(FriendlyByteBuf buf, BrainsweepRecipe recipe) { var result = Block.stateById(buf.readVarInt()); return new BrainsweepRecipe(recipeID, blockIn, brainsweepeeIn, cost, result); } - } + + @Override + public MapCodec codec() { + return null; + } + + @Override + public StreamCodec streamCodec() { + return null; + } + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java index b685b9ea36..509cc3c2a2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java @@ -6,6 +6,7 @@ import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 02a024200e..8d0c11a281 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -19,11 +19,13 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; +import at.petrak.hexcasting.common.components.PigmentItemComponent; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.server.level.ServerLevel; @@ -72,7 +74,7 @@ public interface IXplatAbstractions { void sendPacketTracking(Entity entity, CustomPacketPayload packet); // https://github.com/VazkiiMods/Botania/blob/13b7bcd9cbb6b1a418b0afe455662d29b46f1a7f/Xplat/src/main/java/vazkii/botania/xplat/IXplatAbstractions.java#L157 - Packet toVanillaClientboundPacket(CustomPacketPayload message); + ClientboundCustomPayloadPacket toVanillaClientboundPacket(CustomPacketPayload message); // double getReachDistance(Player player); @@ -127,11 +129,11 @@ public interface IXplatAbstractions { @Nullable ADHexHolder findHexHolder(ItemStack stack); - @Nullable ADVariantItem findVariantHolder(ItemStack stack); - // coooollooorrrs - boolean isPigment(ItemStack stack); + default boolean isPigment(ItemStack stack) { + return stack.has(PigmentItemComponent.COMPONENT_TYPE); + }; ColorProvider getColorProvider(FrozenPigment pigment); diff --git a/Common/src/main/resources/architectury.common.json b/Common/src/main/resources/architectury.common.json new file mode 100644 index 0000000000..e4a0a01454 --- /dev/null +++ b/Common/src/main/resources/architectury.common.json @@ -0,0 +1,3 @@ +{ + "accessWidener": "hexplat.accesswidener" +} \ No newline at end of file diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java index a4a8897afe..a4d47b4776 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java @@ -18,6 +18,7 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -32,7 +33,7 @@ public class FabricClientXplatImpl implements IClientXplatAbstractions { @Override public void sendPacketToServer(CustomPacketPayload packet) { - ClientPlayNetworking.send(packet.getFabricId(), packet.toBuf()); + ClientPlayNetworking.send(packet); } @Override diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index bea4ef7681..737caa04ce 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -63,24 +63,24 @@ dependencies { neoForge "net.neoforged:neoforge:${neoforgeVersion}" common(project(path: ':Common', configuration: 'namedElements')) { transitive false } shadowBundle(project(path: ':Common', configuration: 'transformProductionNeoForge')) { transitive false } - implementation "thedarkcolour:kotlinforforge:$kotlinForForgeVersion" + implementation "thedarkcolour:kotlinforforge-neoforge:$kotlinForForgeVersion" // === MANDATORY DEPS === - implementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" - implementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" - implementation "top.theillusivec4.caelus:caelus-forge:$caelusVersion" + modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" + modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" + modImplementation "com.illusivesoulworks.caelus:caelus-forge:$caelusVersion" // implementation("com.samsthenerd.inline:inline-forge:$minecraftVersion-$inlineVersion") // needed for inline to run - runtimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") + modRuntimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") // === OPTIONAL DEPS === - compileOnly "dev.emi:emi-neoforge:${emiVersion}:api" - runtimeOnly "dev.emi:emi-neoforge:${emiVersion}" + modCompileOnly "dev.emi:emi-neoforge:${emiVersion}:api" + modRuntimeOnly "dev.emi:emi-neoforge:${emiVersion}" modImplementation "io.wispforest:accessories-neoforge:$accessoriesVersion" - api("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") + modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") // "Required due to issues with JIJ dependency resolving in arch or something" // https://github.com/wisp-forest/accessories @@ -136,6 +136,4 @@ processResources { filesMatching("mods.toml") { expand "version": project.version } -} - -jar.finalizedBy('reobfJar') \ No newline at end of file +} \ No newline at end of file diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index 83205facce..13e6cfd972 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -5,4 +5,4 @@ loom.platform=neoforge kotlinForForgeVersion=5.6.0 curiosVersion=5.2.0-beta.3 -caelusVersion=3.1.0+1.20 +caelusVersion=7.0.1+1.21.1 diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index 30e0e2a53e..581b2c2778 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -23,11 +23,10 @@ import net.minecraft.client.renderer.entity.LivingEntityRenderer; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraftforge.client.event.*; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.neoforge.client.event.*; +import net.neoforged.neoforge.common.NeoForge; import java.io.IOException; import java.util.function.Function; @@ -48,7 +47,7 @@ public static void clientInit(FMLClientSetupEvent evt) { (colorizer, block) -> GLOBAL_BLOCK_COLORS.register(colorizer, block)); }); - var evBus = MinecraftForge.EVENT_BUS; + var evBus = NeoForge.EVENT_BUS; evBus.addListener((ClientPlayerNetworkEvent.LoggingIn e) -> PatternRegistryManifest.processRegistry(null)); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java index bf219312fc..64ecbe46f8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java @@ -4,23 +4,23 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.Level; -import net.minecraftforge.common.ForgeConfigSpec; +import net.neoforged.neoforge.common.ModConfigSpec; import java.util.List; import static at.petrak.hexcasting.api.mod.HexConfig.noneMatch; public class ForgeHexConfig implements HexConfig.CommonConfigAccess { - private static ForgeConfigSpec.LongValue dustMediaAmount; - private static ForgeConfigSpec.LongValue shardMediaAmount; - private static ForgeConfigSpec.LongValue chargedCrystalMediaAmount; - private static ForgeConfigSpec.DoubleValue mediaToHealthRate; + private static ModConfigSpec.LongValue dustMediaAmount; + private static ModConfigSpec.LongValue shardMediaAmount; + private static ModConfigSpec.LongValue chargedCrystalMediaAmount; + private static ModConfigSpec.DoubleValue mediaToHealthRate; - private static ForgeConfigSpec.IntValue cypherCooldown; - private static ForgeConfigSpec.IntValue trinketCooldown; - private static ForgeConfigSpec.IntValue artifactCooldown; + private static ModConfigSpec.IntValue cypherCooldown; + private static ModConfigSpec.IntValue trinketCooldown; + private static ModConfigSpec.IntValue artifactCooldown; - public ForgeHexConfig(ForgeConfigSpec.Builder builder) { + public ForgeHexConfig(ModConfigSpec.Builder builder) { builder.push("Media Amounts"); dustMediaAmount = builder.comment("How much media a single Amethyst Dust item is worth") .defineInRange("dustMediaAmount", DEFAULT_DUST_MEDIA_AMOUNT, 0, Integer.MAX_VALUE); @@ -78,13 +78,13 @@ public int artifactCooldown() { } public static class Client implements HexConfig.ClientConfigAccess { - private static ForgeConfigSpec.BooleanValue ctrlTogglesOffStrokeOrder; - private static ForgeConfigSpec.BooleanValue invertSpellbookScrollDirection; - private static ForgeConfigSpec.BooleanValue invertAbacusScrollDirection; - private static ForgeConfigSpec.DoubleValue gridSnapThreshold; - private static ForgeConfigSpec.BooleanValue clickingTogglesDrawing; + private static ModConfigSpec.BooleanValue ctrlTogglesOffStrokeOrder; + private static ModConfigSpec.BooleanValue invertSpellbookScrollDirection; + private static ModConfigSpec.BooleanValue invertAbacusScrollDirection; + private static ModConfigSpec.DoubleValue gridSnapThreshold; + private static ModConfigSpec.BooleanValue clickingTogglesDrawing; - public Client(ForgeConfigSpec.Builder builder) { + public Client(ModConfigSpec.Builder builder) { ctrlTogglesOffStrokeOrder = builder.comment( "Whether the ctrl key will instead turn *off* the color gradient on patterns") .define("ctrlTogglesOffStrokeOrder", DEFAULT_CTRL_TOGGLES_OFF_STROKE_ORDER); @@ -131,26 +131,26 @@ public boolean clickingTogglesDrawing() { } public static class Server implements HexConfig.ServerConfigAccess { - private static ForgeConfigSpec.IntValue opBreakHarvestLevel; - private static ForgeConfigSpec.IntValue maxOpCount; + private static ModConfigSpec.IntValue opBreakHarvestLevel; + private static ModConfigSpec.IntValue maxOpCount; - private static ForgeConfigSpec.IntValue maxSpellCircleLength; + private static ModConfigSpec.IntValue maxSpellCircleLength; - private static ForgeConfigSpec.ConfigValue> actionDenyList; - private static ForgeConfigSpec.ConfigValue> circleActionDenyList; + private static ModConfigSpec.ConfigValue> actionDenyList; + private static ModConfigSpec.ConfigValue> circleActionDenyList; - private static ForgeConfigSpec.BooleanValue villagersOffendedByMindMurder; + private static ModConfigSpec.BooleanValue villagersOffendedByMindMurder; - private static ForgeConfigSpec.ConfigValue> tpDimDenyList; + private static ModConfigSpec.ConfigValue> tpDimDenyList; - private static ForgeConfigSpec.BooleanValue doesTrueNameHaveAmbit; + private static ModConfigSpec.BooleanValue doesTrueNameHaveAmbit; - private static ForgeConfigSpec.ConfigValue> fewScrollTables; - private static ForgeConfigSpec.ConfigValue> someScrollTables; - private static ForgeConfigSpec.ConfigValue> manyScrollTables; + private static ModConfigSpec.ConfigValue> fewScrollTables; + private static ModConfigSpec.ConfigValue> someScrollTables; + private static ModConfigSpec.ConfigValue> manyScrollTables; - public Server(ForgeConfigSpec.Builder builder) { + public Server(ModConfigSpec.Builder builder) { builder.push("Spells"); maxOpCount = builder.comment("The maximum number of actions that can be executed in one tick, to avoid " + "hanging the server.") @@ -228,7 +228,7 @@ public boolean trueNameHasAmbit() { } private static boolean isValidReslocArg(Object o) { - return o instanceof String s && ResourceLocation.isValidResourceLocation(s); + return o instanceof String s && ResourceLocation.tryParse(s) != null; } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index 16bc2a0549..2846ef1cfc 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -47,38 +47,38 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.BlockSetType; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.common.ToolActions; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.event.BuildCreativeModeTabContentsEvent; -import net.minecraftforge.event.RegisterCommandsEvent; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.event.entity.EntityAttributeModificationEvent; -import net.minecraftforge.event.entity.living.LivingConversionEvent; -import net.minecraftforge.event.entity.living.LivingEvent; -import net.minecraftforge.event.entity.player.PlayerEvent; -import net.minecraftforge.event.entity.player.PlayerInteractEvent; -import net.minecraftforge.event.level.BlockEvent; -import net.minecraftforge.event.server.ServerStartedEvent; -import net.minecraftforge.eventbus.api.IEventBus; -import net.minecraftforge.fml.DistExecutor; -import net.minecraftforge.fml.ModList; -import net.minecraftforge.fml.ModLoadingContext; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.config.ModConfig; -import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; -import net.minecraftforge.network.PacketDistributor; -import net.minecraftforge.registries.RegisterEvent; -import thedarkcolour.kotlinforforge.KotlinModLoadingContext; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.ModList; +import net.neoforged.fml.ModLoadingContext; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.config.ModConfig; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.neoforge.common.ItemAbilities; +import net.neoforged.neoforge.common.ModConfigSpec; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.common.crafting.CraftingHelper; +import net.neoforged.neoforge.event.BuildCreativeModeTabContentsEvent; +import net.neoforged.neoforge.event.RegisterCommandsEvent; +import net.neoforged.neoforge.event.entity.EntityAttributeModificationEvent; +import net.neoforged.neoforge.event.entity.living.LivingConversionEvent; +import net.neoforged.neoforge.event.entity.living.LivingEvent; +import net.neoforged.neoforge.event.entity.player.PlayerEvent; +import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent; +import net.neoforged.neoforge.event.level.BlockEvent; +import net.neoforged.neoforge.event.server.ServerStartedEvent; +import net.neoforged.neoforge.event.tick.LevelTickEvent; +import net.neoforged.neoforge.network.PacketDistributor; +import net.neoforged.neoforge.registries.RegisterEvent; +import thedarkcolour.kotlinforforge.neoforge.KotlinModLoadingContext; import java.util.function.BiConsumer; import java.util.function.Consumer; @Mod(HexAPI.MOD_ID) public class ForgeHexInitializer { - public ForgeHexInitializer() { + public ForgeHexInitializer(ModContainer container) { initConfig(); initRegistries(); initRegistry(); @@ -86,9 +86,9 @@ public ForgeHexInitializer() { } private static void initConfig() { - var config = new ForgeConfigSpec.Builder().configure(ForgeHexConfig::new); - var clientConfig = new ForgeConfigSpec.Builder().configure(ForgeHexConfig.Client::new); - var serverConfig = new ForgeConfigSpec.Builder().configure(ForgeHexConfig.Server::new); + var config = new ModConfigSpec.Builder().configure(ForgeHexConfig::new); + var clientConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Client::new); + var serverConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Server::new); HexConfig.setCommon(config.getLeft()); HexConfig.setClient(clientConfig.getLeft()); HexConfig.setServer(serverConfig.getLeft()); @@ -161,7 +161,7 @@ private static void bind(ResourceKey> registry, private static void initListeners() { var modBus = getModEventBus(); - var evBus = MinecraftForge.EVENT_BUS; + var evBus = NeoForge.EVENT_BUS; DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> modBus.register(ForgeHexClientInitializer.class)); @@ -212,15 +212,15 @@ private static void initListeners() { evBus.addListener((LivingConversionEvent.Post evt) -> BrainsweepingEvents.copyBrainsweepPostTransformation(evt.getEntity(), evt.getOutcome())); - evBus.addListener((LivingEvent.LivingTickEvent evt) -> { + evBus.addListener((LivingEvent evt) -> { if (evt.getEntity() instanceof ServerPlayer splayer) { OpFlight.tickDownFlight(splayer); OpAltiora.checkPlayerCollision(splayer); } }); - evBus.addListener((TickEvent.LevelTickEvent evt) -> { - if (evt.phase == TickEvent.Phase.END && evt.level instanceof ServerLevel world) { + evBus.addListener((LevelTickEvent evt) -> { + if (evt instanceof LevelTickEvent.Post && evt.getLevel() instanceof ServerLevel world) { PlayerPositionRecorder.updateAllPlayers(world); } }); @@ -255,7 +255,7 @@ private static void initListeners() { // Implemented with a mixin on Farbc evBus.addListener((BlockEvent.BlockToolModificationEvent evt) -> { - if (!evt.isSimulated() && evt.getToolAction() == ToolActions.AXE_STRIP) { + if (!evt.isSimulated() && evt.getItemAbility() == ItemAbilities.AXE_STRIP) { BlockState bs = evt.getState(); var output = HexStrippables.STRIPPABLES.get(bs.getBlock()); if (output != null) { @@ -266,9 +266,6 @@ private static void initListeners() { // Caps are cardinal components on farbc modBus.addListener(ForgeCapabilityHandler::registerCaps); - evBus.addGenericListener(ItemStack.class, ForgeCapabilityHandler::attachItemCaps); - evBus.addGenericListener(BlockEntity.class, ForgeCapabilityHandler::attachBlockEntityCaps); - evBus.addGenericListener(Entity.class, ForgeCapabilityHandler::attachEntityCaps); modBus.register(ForgeHexDataGenerators.class); modBus.register(ForgeCapabilityHandler.class); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java index 502357ab3a..8ecf78f7fb 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java @@ -15,7 +15,6 @@ import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.core.Direction; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.decoration.ItemFrame; @@ -24,18 +23,18 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.common.capabilities.RegisterCapabilitiesEvent; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.common.util.NonNullSupplier; -import net.minecraftforge.event.AttachCapabilitiesEvent; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.neoforged.neoforge.capabilities.BaseCapability; +import net.neoforged.neoforge.capabilities.Capabilities; +import net.neoforged.neoforge.capabilities.ICapabilityProvider; +import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Optional; import java.util.function.BooleanSupplier; import java.util.function.Function; +import java.util.function.Supplier; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -78,10 +77,12 @@ public class ForgeCapabilityHandler { public static final ResourceLocation PATTERN_SPIRAL = modLoc("pattern_spiral"); public static void registerCaps(RegisterCapabilitiesEvent evt) { - evt.register(ADMediaHolder.class); - evt.register(ADIotaHolder.class); - evt.register(ADHexHolder.class); - evt.register(ADPigment.class); + evt.registerBlockEntity( + Capabilities.ItemHandler.BLOCK, + , + (impetus, context) -> provide(impetus, Capabilities.ItemHandler.BLOCK, + () -> new ForgeImpetusCapability((BlockEntityAbstractImpetus) impetus) + ); } public static void attachItemCaps(AttachCapabilitiesEvent evt) { @@ -159,57 +160,54 @@ public static void attachEntityCaps(AttachCapabilitiesEvent evt) { } } - public static void attachBlockEntityCaps(AttachCapabilitiesEvent evt) { - if (evt.getObject() instanceof BlockEntityAbstractImpetus impetus) { - evt.addCapability(IMPETUS_HANDLER, provide(impetus, ForgeCapabilities.ITEM_HANDLER, - () -> new ForgeImpetusCapability(impetus))); - } - } - // i do not know why we need super here - private static SimpleProvider wrapItemEntityDelegate(E entity, + private static SimpleProvider wrapItemEntityDelegate(E entity, Function make) { - return provide(entity, HexCapabilities.IOTA, + return provide(entity, HexCapabilities.ITEM_IOTA, () -> new CapEntityIotaHolder.Wrapper(make.apply(entity))); } - private static SimpleProvider provide(Entity entity, Capability capability, - NonNullSupplier supplier) { + private static SimpleProvider provide(Entity entity, BaseCapability capability, + Supplier supplier) { return provide(entity::isRemoved, capability, supplier); } - private static SimpleProvider provide(BlockEntity be, Capability capability, - NonNullSupplier supplier) { + private static SimpleProvider provide(BlockEntity be, BaseCapability capability, + Supplier supplier) { return provide(be::isRemoved, capability, supplier); } - public static SimpleProvider provide(ItemStack stack, Capability capability, - NonNullSupplier supplier) { + public static SimpleProvider provide(ItemStack stack, BaseCapability capability, + Supplier supplier) { return provide(stack::isEmpty, capability, supplier); } - private static SimpleProvider provide(BooleanSupplier invalidated, Capability capability, - NonNullSupplier supplier) { - return new SimpleProvider<>(invalidated, capability, LazyOptional.of(supplier)); + private static SimpleProvider provide(BooleanSupplier invalidated, BaseCapability capability, + Supplier supplier) { + return new SimpleProvider<>(invalidated, capability, Optional.of(supplier)); } - public static ICapabilityProvider makeProvider(Capability cap, U instance) { - LazyOptional lazyInstanceButNotReally = LazyOptional.of(() -> instance); + public static ICapabilityProvider makeProvider(BaseCapability cap, CAP instance) { + Optional> lazyInstanceButNotReally = Optional.of(() -> instance); return new SimpleProvider<>(() -> false, cap, lazyInstanceButNotReally); } - public record SimpleProvider(BooleanSupplier invalidated, - Capability capability, - LazyOptional instance) implements ICapabilityProvider { + public record SimpleProvider(BooleanSupplier invalidated, + BaseCapability capability, + Optional> instance) implements ICapabilityProvider { @NotNull - @Override - public LazyOptional getCapability(@NotNull Capability cap, @Nullable Direction side) { + public Optional getCapability(@NotNull BaseCapability cap) { if (invalidated.getAsBoolean()) { - return LazyOptional.empty(); + return Optional.empty(); } - return cap == capability ? instance.cast() : LazyOptional.empty(); + return cap == capability ? instance : Optional.empty(); + } + + @Override + public @Nullable Object getCapability(Object object, Object object2) { + return null; } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java index 9da53fa9a5..45d22e2eb8 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeImpetusCapability.java @@ -2,7 +2,7 @@ import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; import org.jetbrains.annotations.NotNull; public record ForgeImpetusCapability(BlockEntityAbstractImpetus impetus) implements IItemHandler { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java index 9db3e48d0a..07e25361af 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java @@ -2,24 +2,42 @@ import at.petrak.hexcasting.api.addldata.*; import at.petrak.hexcasting.api.client.ClientCastingStack; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.CapabilityManager; -import net.minecraftforge.common.capabilities.CapabilityToken; +import net.neoforged.neoforge.capabilities.EntityCapability; +import net.neoforged.neoforge.capabilities.ItemCapability; import java.util.function.Supplier; +import static at.petrak.hexcasting.api.HexAPI.modLoc; + public final class HexCapabilities { - public static final Capability MEDIA = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability IOTA = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability STORED_HEX = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability VARIANT_ITEM = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability COLOR = CapabilityManager.get(new CapabilityToken<>() { - }); - public static final Capability> CLIENT_CASTING_STACK = CapabilityManager.get(new CapabilityToken<>() { - }); + public static final ItemCapability MEDIA = + ItemCapability.createVoid( + modLoc("item_media_holder"), + ADMediaHolder.class + ); + public static final EntityCapability MEDIA_ENTITY = + EntityCapability.createVoid( + modLoc("entity_media_holder"), + ADMediaHolder.class + ); + + public static final ItemCapability IOTA = ItemCapability.createVoid( + modLoc("item_iota_holder"), + ADIotaHolder.class + ); + public static final EntityCapability IOTA_ENTITY = EntityCapability.createVoid( + modLoc("entity_iota_holder"), + ADIotaHolder.class + ); + + public static final ItemCapability STORED_HEX = ItemCapability.createVoid( + modLoc("item_hex_holder"), + ADHexHolder.class + ); + + public static final ItemCapability COLOR = ItemCapability.createVoid( + modLoc("item_pigment"), + ADPigment.class + ); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java index dfb750c35a..6398786f55 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java @@ -9,15 +9,7 @@ import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.fml.InterModComms; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent; -import top.theillusivec4.curios.api.CuriosCapability; -import top.theillusivec4.curios.api.SlotContext; -import top.theillusivec4.curios.api.SlotTypeMessage; -import top.theillusivec4.curios.api.SlotTypePreset; -import top.theillusivec4.curios.api.type.capability.ICurio; + import java.util.UUID; import java.util.concurrent.atomic.AtomicReference; @@ -50,7 +42,7 @@ public Multimap getAttributeModifiers(SlotContext } public static ICapabilityProvider curioCap(ItemStack stack) { - return ForgeCapabilityHandler.makeProvider(CuriosCapability.ITEM, new Wrapper(stack)); + return ForgeCapabilityHandler.makeProvider(CuriosCapability.ITEM); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java index 78485aa6f9..9bb5f298cf 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java @@ -1,11 +1,14 @@ package at.petrak.hexcasting.forge.network; import at.petrak.hexcasting.common.msgs.*; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; -import net.minecraftforge.network.NetworkEvent; -import net.minecraftforge.network.NetworkRegistry; -import net.minecraftforge.network.simple.SimpleChannel; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent; +import net.neoforged.neoforge.network.handlers.ClientPayloadHandler; +import net.neoforged.neoforge.network.handling.IPayloadHandler; +import net.neoforged.neoforge.network.registration.PayloadRegistrar; import org.apache.logging.log4j.util.TriConsumer; import java.util.function.BiConsumer; @@ -15,68 +18,42 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgePacketHandler { - private static final String PROTOCOL_VERSION = "1"; - private static final SimpleChannel NETWORK = NetworkRegistry.newSimpleChannel( - modLoc("main"), - () -> PROTOCOL_VERSION, - PROTOCOL_VERSION::equals, - PROTOCOL_VERSION::equals - ); - public static SimpleChannel getNetwork() { - return NETWORK; - } - - public static void init() { - int messageIdx = 0; + @SubscribeEvent + public static void register(RegisterPayloadHandlersEvent event) { + final PayloadRegistrar registrar = event.registrar("1"); // Client -> server - NETWORK.registerMessage(messageIdx++, MsgNewSpellPatternC2S.class, MsgNewSpellPatternC2S::serialize, - MsgNewSpellPatternC2S::deserialize, makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); - NETWORK.registerMessage(messageIdx++, MsgShiftScrollC2S.class, MsgShiftScrollC2S::serialize, - MsgShiftScrollC2S::deserialize, makeServerBoundHandler(MsgShiftScrollC2S::handle)); + registrar.playToServer(MsgNewSpellPatternC2S.ID, MsgNewSpellPatternC2S.CODEC, makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); + registrar.playToServer(MsgShiftScrollC2S.ID, MsgShiftScrollC2S.CODEC, makeServerBoundHandler(MsgShiftScrollC2S::handle)); // Server -> client - NETWORK.registerMessage(messageIdx++, MsgNewSpellPatternS2C.class, MsgNewSpellPatternS2C::serialize, - MsgNewSpellPatternS2C::deserialize, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBlinkS2C.class, MsgBlinkS2C::serialize, - MsgBlinkS2C::deserialize, makeClientBoundHandler(MsgBlinkS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgSentinelStatusUpdateAck.class, MsgSentinelStatusUpdateAck::serialize, - MsgSentinelStatusUpdateAck::deserialize, makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgPigmentUpdateAck.class, MsgPigmentUpdateAck::serialize, - MsgPigmentUpdateAck::deserialize, makeClientBoundHandler(MsgPigmentUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgAltioraUpdateAck.class, MsgAltioraUpdateAck::serialize, - MsgAltioraUpdateAck::deserialize, makeClientBoundHandler(MsgAltioraUpdateAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgCastParticleS2C.class, MsgCastParticleS2C::serialize, - MsgCastParticleS2C::deserialize, makeClientBoundHandler(MsgCastParticleS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgOpenSpellGuiS2C.class, MsgOpenSpellGuiS2C::serialize, - MsgOpenSpellGuiS2C::deserialize, makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBeepS2C.class, MsgBeepS2C::serialize, - MsgBeepS2C::deserialize, makeClientBoundHandler(MsgBeepS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgBrainsweepAck.class, MsgBrainsweepAck::serialize, - MsgBrainsweepAck::deserialize, makeClientBoundHandler(MsgBrainsweepAck::handle)); - NETWORK.registerMessage(messageIdx++, MsgNewWallScrollS2C.class, MsgNewWallScrollS2C::serialize, - MsgNewWallScrollS2C::deserialize, makeClientBoundHandler(MsgNewWallScrollS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgRecalcWallScrollDisplayS2C.class, MsgRecalcWallScrollDisplayS2C::serialize, - MsgRecalcWallScrollDisplayS2C::deserialize, makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgNewSpiralPatternsS2C.class, MsgNewSpiralPatternsS2C::serialize, - MsgNewSpiralPatternsS2C::deserialize, makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); - NETWORK.registerMessage(messageIdx++, MsgClearSpiralPatternsS2C.class, MsgClearSpiralPatternsS2C::serialize, - MsgClearSpiralPatternsS2C::deserialize, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); + registrar.playToClient(MsgNewSpellPatternS2C.ID, MsgNewSpellPatternS2C.CODEC, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); + registrar.playToClient(MsgNewSpellPatternS2C.ID, MsgNewSpellPatternS2C.CODEC, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); + registrar.playToClient(MsgBlinkS2C.ID, MsgBlinkS2C.CODEC, makeClientBoundHandler(MsgBlinkS2C::handle)); + registrar.playToClient(MsgSentinelStatusUpdateAck.ID, MsgSentinelStatusUpdateAck.CODEC, makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); + registrar.playToClient(MsgPigmentUpdateAck.ID, MsgPigmentUpdateAck.CODEC, makeClientBoundHandler(MsgPigmentUpdateAck::handle)); + registrar.playToClient(MsgAltioraUpdateAck.ID, MsgAltioraUpdateAck.CODEC, makeClientBoundHandler(MsgAltioraUpdateAck::handle)); + registrar.playToClient(MsgCastParticleS2C.ID, MsgCastParticleS2C.CODEC, makeClientBoundHandler(MsgCastParticleS2C::handle)); + registrar.playToClient(MsgOpenSpellGuiS2C.ID, MsgOpenSpellGuiS2C.CODEC, makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); + registrar.playToClient(MsgBeepS2C.ID, MsgBeepS2C.CODEC, makeClientBoundHandler(MsgBeepS2C::handle)); + registrar.playToClient(MsgBrainsweepAck.ID, MsgBrainsweepAck.CODEC, makeClientBoundHandler(MsgBrainsweepAck::handle)); + registrar.playToClient(MsgNewWallScrollS2C.ID, MsgNewWallScrollS2C.CODEC, makeClientBoundHandler(MsgNewWallScrollS2C::handle)); + registrar.playToClient(MsgRecalcWallScrollDisplayS2C.ID, MsgRecalcWallScrollDisplayS2C.CODEC, makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); + registrar.playToClient(MsgNewSpiralPatternsS2C.ID, MsgNewSpiralPatternsS2C.CODEC, makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); + registrar.playToClient(MsgClearSpiralPatternsS2C.ID, MsgClearSpiralPatternsS2C.CODEC, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); } - private static BiConsumer> makeServerBoundHandler( + private static IPayloadHandler makeServerBoundHandler( TriConsumer handler) { return (m, ctx) -> { - handler.accept(m, ctx.get().getSender().getServer(), ctx.get().getSender()); - ctx.get().setPacketHandled(true); + handler.accept(m, ctx.player().getServer(), (ServerPlayer) ctx.player()); }; } - private static BiConsumer> makeClientBoundHandler(Consumer consumer) { + private static IPayloadHandler makeClientBoundHandler(Consumer consumer) { return (m, ctx) -> { consumer.accept(m); - ctx.get().setPacketHandled(true); }; } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java index 434104aa9b..5381ca9e4a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java @@ -11,11 +11,8 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraftforge.common.crafting.AbstractIngredient; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.common.crafting.IIngredientSerializer; -import net.minecraftforge.common.crafting.PartialNBTIngredient; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.common.crafting.ICustomIngredient; +import net.neoforged.neoforge.common.crafting.IngredientType; import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; @@ -24,7 +21,7 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; -public class ForgeUnsealedIngredient extends AbstractIngredient { +public class ForgeUnsealedIngredient implements ICustomIngredient { public static final ResourceLocation ID = modLoc("unsealed"); private final ItemStack stack; @@ -62,11 +59,21 @@ public boolean test(@Nullable ItemStack input) { return false; } + @Override + public Stream getItems() { + return Stream.empty(); + } + @Override public boolean isSimple() { return false; } + @Override + public IngredientType getType() { + return null; + } + @Override public @NotNull IIngredientSerializer getSerializer() { return ForgeUnsealedIngredient.Serializer.INSTANCE; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index e1f8f9a867..7a1f95d82e 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -10,6 +10,7 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -48,7 +49,7 @@ public void registerItemProperty(Item item, ResourceLocation id, ItemPropertyFun @Override public ClientCastingStack getClientCastingStack(Player player) { - var maybeCap = player.getCapability(HexCapabilities.CLIENT_CASTING_STACK).resolve(); + var maybeCap = player.getCapability(HexCapabilities.CLIENT_CASTING_STACK); if (maybeCap.isEmpty()) return new ClientCastingStack(); // lie return maybeCap.get().get(); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index f325aa003b..40623c5324 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -3,7 +3,6 @@ import at.petrak.hexcasting.api.addldata.ADHexHolder; import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.addldata.ADMediaHolder; -import at.petrak.hexcasting.api.addldata.ADVariantItem; import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.casting.arithmetic.Arithmetic; import at.petrak.hexcasting.api.casting.castables.SpecialHandler; @@ -29,7 +28,6 @@ import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.forge.mixin.ForgeAccessorBuiltInRegistries; -import at.petrak.hexcasting.forge.network.ForgePacketHandler; import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; @@ -45,9 +43,8 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.nbt.Tag; -import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; @@ -72,33 +69,33 @@ import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.Vec3; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.common.*; -import net.minecraftforge.common.loot.CanToolPerformAction; -import net.minecraftforge.common.util.FakePlayerFactory; -import net.minecraftforge.event.level.BlockEvent; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidType; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fml.ModContainer; -import net.minecraftforge.fml.ModList; -import net.minecraftforge.fml.loading.FMLLoader; -import net.minecraftforge.network.NetworkDirection; -import net.minecraftforge.network.PacketDistributor; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.ModList; +import net.neoforged.fml.loading.FMLLoader; +import net.neoforged.neoforge.common.CommonHooks; +import net.neoforged.neoforge.common.ItemAbilities; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.common.loot.CanItemPerformAbility; +import net.neoforged.neoforge.common.util.FakePlayerFactory; +import net.neoforged.neoforge.event.level.BlockEvent; +import net.neoforged.neoforge.fluids.FluidStack; +import net.neoforged.neoforge.fluids.FluidType; +import net.neoforged.neoforge.fluids.FluidUtil; +import net.neoforged.neoforge.fluids.capability.IFluidHandler; +import net.neoforged.neoforge.network.PacketDistributor; import org.jetbrains.annotations.Nullable; -import top.theillusivec4.caelus.api.CaelusApi; +import com.illusivesoulworks.caelus.api.CaelusApi; import virtuoel.pehkui.api.ScaleTypes; import java.util.ArrayList; import java.util.List; import java.util.Optional; -import java.util.UUID; import java.util.function.BiFunction; import java.util.function.Supplier; import static at.petrak.hexcasting.api.HexAPI.modLoc; -import static net.minecraftforge.fluids.capability.IFluidHandler.FluidAction.EXECUTE; + public class ForgeXplatImpl implements IXplatAbstractions { @Override @@ -133,8 +130,7 @@ public void setBrainsweepAddlData(Mob mob) { mob.getPersistentData().putBoolean(TAG_BRAINSWEPT, true); if (mob.level() instanceof ServerLevel) { - ForgePacketHandler.getNetwork() - .send(PacketDistributor.TRACKING_ENTITY.with(() -> mob), MsgBrainsweepAck.of(mob)); + sendPacketTracking(mob, MsgBrainsweepAck.of(mob)); } } @@ -166,12 +162,12 @@ public void setAltiora(Player player, @Nullable AltioraAbility altiora) { } // The elytra ability is done with an event on fabric - var elytraing = CaelusApi.getInstance().getFlightAttribute(); - var inst = player.getAttributes().getInstance(elytraing); + var elytraing = CaelusApi.getInstance().getFallFlyingAttribute(); + var inst = player.getAttribute(elytraing); if (altiora != null) { if (inst.getModifier(ALTIORA_ATTRIBUTE_ID) == null) { - inst.addTransientModifier(new AttributeModifier(ALTIORA_ATTRIBUTE_ID, "Altiora", 1.0, - AttributeModifier.Operation.ADDITION)); + inst.addTransientModifier(new AttributeModifier(ALTIORA_ATTRIBUTE_ID, 1.0, + AttributeModifier.Operation.ADD_VALUE)); } } else { inst.removeModifier(ALTIORA_ATTRIBUTE_ID); @@ -246,7 +242,7 @@ public FlightAbility getFlight(ServerPlayer player) { var origin = HexUtils.vecFromNBT(tag.getCompound(TAG_FLIGHT_ORIGIN)); var radius = tag.getDouble(TAG_FLIGHT_RADIUS); var dimension = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_FLIGHT_DIMENSION))); + ResourceLocation.parse(tag.getString(TAG_FLIGHT_DIMENSION))); return new FlightAbility(timeLeft, dimension, origin, radius); } return null; @@ -278,7 +274,7 @@ public Sentinel getSentinel(Player player) { var extendsRange = tag.getBoolean(TAG_SENTINEL_GREATER); var position = HexUtils.vecFromNBT(tag.getCompound(TAG_SENTINEL_POSITION)); var dimension = ResourceKey.create(Registries.DIMENSION, - new ResourceLocation(tag.getString(TAG_SENTINEL_DIMENSION))); + ResourceLocation.parse(tag.getString(TAG_SENTINEL_DIMENSION))); return new Sentinel(extendsRange, position, dimension); } @@ -312,77 +308,63 @@ public void clearCastingData(ServerPlayer player) { @Override public @Nullable ADMediaHolder findMediaHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.MEDIA).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.MEDIA); } @Override public @Nullable ADMediaHolder findMediaHolder(ServerPlayer player) { - var maybeCap = player.getCapability(HexCapabilities.MEDIA).resolve(); - return maybeCap.orElse(null); + return player.getCapability(HexCapabilities.MEDIA_ENTITY); } @Override public @Nullable ADIotaHolder findDataHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.IOTA).resolve(); - return maybeCap.orElse(null); + return stack.getCapability(HexCapabilities.IOTA); } @Override public @Nullable ADIotaHolder findDataHolder(Entity entity) { - var maybeCap = entity.getCapability(HexCapabilities.IOTA).resolve(); - return maybeCap.orElse(null); + return entity.getCapability(HexCapabilities.IOTA_ENTITY); } @Override public @Nullable ADHexHolder findHexHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.STORED_HEX).resolve(); - return maybeCap.orElse(null); - } - - @Override - public @Nullable ADVariantItem findVariantHolder(ItemStack stack) { - var maybeCap = stack.getCapability(HexCapabilities.VARIANT_ITEM).resolve(); - return maybeCap.orElse(null); - } - - @Override - public boolean isPigment(ItemStack stack) { - return stack.getCapability(HexCapabilities.COLOR).isPresent(); + return stack.getCapability(HexCapabilities.STORED_HEX); } @Override public ColorProvider getColorProvider(FrozenPigment pigment) { - var maybePigment = pigment.item().getCapability(HexCapabilities.COLOR).resolve(); - if (maybePigment.isPresent()) { - return maybePigment.get().provideColor(pigment.owner()); - } - return ColorProvider.MISSING; + var maybePigment = pigment.item().getCapability(HexCapabilities.COLOR); + assert maybePigment != null; + return maybePigment.provideColor(pigment.owner()); } @Override public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.PLAYER.with(() -> target), packet); + target.connection.send(packet); } @Override public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.NEAR.with(() -> new PacketDistributor.TargetPoint( - pos.x, pos.y, pos.z, radius * radius, dimension.dimension() - )), packet); + List players = dimension.getPlayers((player) -> { + double r2 = radius * radius; + return player.level() == dimension && player.position().distanceToSqr(pos) <= r2; + }); + for (ServerPlayer player : players) { + player.connection.send(packet); + } } @Override public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { - ForgePacketHandler.getNetwork().send(PacketDistributor.TRACKING_ENTITY.with(() -> entity), packet); + PacketDistributor.sendToPlayersTrackingEntity(entity, packet); } @Override - public Packet toVanillaClientboundPacket(CustomPacketPayload message) { + public ClientboundCustomPayloadPacket toVanillaClientboundPacket(CustomPacketPayload message) { //noinspection unchecked - return (Packet) ForgePacketHandler.getNetwork().toVanillaPacket(message, NetworkDirection.PLAY_TO_CLIENT); + return message.toVanillaClientbound(); } @Override @@ -393,19 +375,19 @@ public BlockEntityType createBlockEntityType(BiFuncti @Override public boolean tryPlaceFluid(Level level, InteractionHand hand, BlockPos pos, Fluid fluid) { - Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP).resolve(); + Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP); return handler.isPresent() && - handler.get().fill(new FluidStack(fluid, FluidType.BUCKET_VOLUME), EXECUTE) > 0; + handler.get().fill(new FluidStack(fluid, FluidType.BUCKET_VOLUME), IFluidHandler.FluidAction.EXECUTE) > 0; } @Override public boolean drainAllFluid(Level level, BlockPos pos) { - Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP).resolve(); + Optional handler = FluidUtil.getFluidHandler(level, pos, Direction.UP); if (handler.isPresent()) { boolean any = false; IFluidHandler pool = handler.get(); for (int i = 0; i < pool.getTanks(); i++) { - if (!pool.drain(pool.getFluidInTank(i), EXECUTE).isEmpty()) { + if (!pool.drain(pool.getFluidInTank(i), IFluidHandler.FluidAction.EXECUTE).isEmpty()) { any = true; } } @@ -416,12 +398,12 @@ public boolean drainAllFluid(Level level, BlockPos pos) { @Override public Ingredient getUnsealedIngredient(ItemStack stack) { - return ForgeUnsealedIngredient.of(stack); + return ForgeUnsealedIngredient.of(stack).toVanilla(); } @Override public boolean isCorrectTierForDrops(Tier tier, BlockState bs) { - return !bs.requiresCorrectToolForDrops() || TierSortingRegistry.isCorrectTierForDrops(tier, bs); + return !bs.requiresCorrectToolForDrops(); } @Override @@ -432,12 +414,12 @@ public Item.Properties addEquipSlotFabric(EquipmentSlot slot) { private static final IXplatTags TAGS = new IXplatTags() { @Override public TagKey amethystDust() { - return HexTags.Items.create(new ResourceLocation("forge", "dusts/amethyst")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("forge", "dusts/amethyst")); } @Override public TagKey gems() { - return HexTags.Items.create(new ResourceLocation("forge", "gems")); + return HexTags.Items.create(ResourceLocation.fromNamespaceAndPath("forge", "gems")); } }; @@ -448,7 +430,7 @@ public IXplatTags tags() { @Override public LootItemCondition.Builder isShearsCondition() { - return CanToolPerformAction.canToolPerformAction(ToolActions.SHEARS_DIG); + return CanItemPerformAbility.canItemPerformAbility(ItemAbilities.SHEARS_DIG); } @Override @@ -526,7 +508,7 @@ public Registry getEvalSoundRegistry() { public boolean isBreakingAllowed(ServerLevel world, BlockPos pos, BlockState state, @Nullable Player player) { if (player == null) player = FakePlayerFactory.get(world, HEXCASTING); - return !MinecraftForge.EVENT_BUS.post(new BlockEvent.BreakEvent(world, pos, state, player)); + return !NeoForge.EVENT_BUS.post(new BlockEvent.BreakEvent(world, pos, state, player)).isCanceled(); } @Override @@ -535,7 +517,7 @@ public boolean isPlacingAllowed(ServerLevel world, BlockPos pos, ItemStack block player = FakePlayerFactory.get(world, HEXCASTING); ItemStack cached = player.getMainHandItem(); player.setItemInHand(InteractionHand.MAIN_HAND, blockStack.copy()); - var evt = ForgeHooks.onRightClickBlock(player, InteractionHand.MAIN_HAND, pos, + var evt = CommonHooks.onRightClickBlock(player, InteractionHand.MAIN_HAND, pos, new BlockHitResult(Vec3.atCenterOf(pos), Direction.DOWN, pos, true)); player.setItemInHand(InteractionHand.MAIN_HAND, cached); return !evt.isCanceled(); @@ -583,7 +565,7 @@ public void setScale(Entity e, float scale) { public static final String TAG_ALTIORA_ALLOWED = "hexcasting:altiora_allowed"; public static final String TAG_ALTIORA_GRACE = "hexcasting:altiora_grace_period"; - public static final UUID ALTIORA_ATTRIBUTE_ID = UUID.fromString("91897c79-3ebb-468c-a265-40418ed01c41"); + public static final ResourceLocation ALTIORA_ATTRIBUTE_ID = modLoc("Altiora"); public static final String TAG_HARNESS = "hexcasting:spell_harness"; public static final String TAG_PATTERNS = "hexcasting:spell_patterns"; diff --git a/build.gradle b/build.gradle index 2b02304af4..1cec17cc94 100644 --- a/build.gradle +++ b/build.gradle @@ -120,7 +120,7 @@ compileTestKotlin { } tasks.register("runAllDatagen") { - dependsOn ":Forge:runXplatDatagen" - dependsOn ":Forge:runForgeDatagen" + dependsOn ":Neoforge:runXplatDatagen" + dependsOn ":Neoforge:runForgeDatagen" dependsOn ":Fabric:runDatagen" } From b07e5b790486f581a76965fa878b804dc1c789f6 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Tue, 25 Nov 2025 18:22:06 -0600 Subject: [PATCH 10/51] * More various fixes like... * New ContainerInput for Recipes * Various edits to different Items * etc, this is setting up for a merge anyway --- .../java/at/petrak/hexcasting/api/HexAPI.java | 50 +------------- .../FailToCastGreatSpellTrigger.java | 37 +++++----- .../api/advancements/MinMaxLongs.java | 61 ++++++++-------- .../api/advancements/OvercastTrigger.java | 69 ++++++------------- .../api/advancements/SpendMediaTrigger.java | 57 +++++---------- .../hexcasting/api/block/HexBlockEntity.java | 18 ----- .../casting/circles/CircleExecutionState.java | 12 ++-- .../petrak/hexcasting/api/mod/HexConfig.java | 5 +- .../hexcasting/api/pigment/FrozenPigment.java | 2 +- .../petrak/hexcasting/api/utils/HexUtils.kt | 4 ++ .../petrak/hexcasting/api/utils/NBTHelper.kt | 13 ++++ .../components/ItemHexHolderComponent.java | 8 ++- .../components/PigmentItemComponent.java | 2 +- .../hexcasting/common/impl/HexAPIImpl.java | 50 -------------- .../common/items/ItemJewelerHammer.java | 4 +- .../hexcasting/common/items/ItemLens.java | 21 ++---- .../common/items/ItemLoreFragment.java | 5 +- .../hexcasting/common/items/ItemStaff.java | 2 +- .../common/items/armor/ItemRobes.java | 19 ----- .../items/magic/ItemCreativeUnlocker.java | 47 +++++++------ .../common/items/magic/ItemMediaHolder.java | 7 +- .../common/items/magic/ItemPackagedHex.java | 29 +++----- .../common/items/pigment/ItemUUIDPigment.java | 3 +- .../common/items/storage/ItemAbacus.java | 2 +- .../common/items/storage/ItemFocus.java | 2 +- .../common/items/storage/ItemSpellbook.java | 13 ++-- .../common/items/storage/ItemThoughtKnot.java | 2 +- .../common/lib/HexConfiguredFeatures.java | 2 +- .../hexcasting/common/lib/HexItems.java | 10 +-- .../hexcasting/common/lib/HexMobEffects.java | 8 +-- .../hexcasting/common/misc/ContainerInput.kt | 21 ++++++ .../common/msgs/MsgShiftScrollC2S.java | 2 +- .../common/recipe/BrainsweepRecipe.java | 23 +++---- .../common/recipe/SealSpellbookRecipe.java | 64 ----------------- .../common/recipe/SealThingsRecipe.java | 14 ++-- .../hexcasting/datagen/HexAdvancements.java | 8 ++- .../accessor/CriteriaTriggersAccessor.java | 3 +- .../fabric/interop/emi/HexEMIPlugin.java | 12 ++-- Neoforge/build.gradle | 2 + Neoforge/gradle.properties | 1 + .../cap/adimpl/CapClientCastingStack.java | 3 - 41 files changed, 255 insertions(+), 462 deletions(-) delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java create mode 100644 Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java index 8ddde5669b..12b5905bad 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java @@ -165,54 +165,6 @@ default FrozenPigment getColorizer(Player player) { return FrozenPigment.DEFAULT.get(); } - ArmorMaterial DUMMY_ARMOR_MATERIAL = new ArmorMaterial() { - @Override - public int getDurabilityForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getDefenseForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getEnchantmentValue() { - return 0; - } - - @NotNull - @Override - public SoundEvent getEquipSound() { - return SoundEvents.ARMOR_EQUIP_LEATHER; - } - - @NotNull - @Override - public Ingredient getRepairIngredient() { - return Ingredient.EMPTY; - } - - @Override - public String getName() { - return "missingno"; - } - - @Override - public float getToughness() { - return 0; - } - - @Override - public float getKnockbackResistance() { - return 0; - } - }; - - default ArmorMaterial robesMaterial() { - return DUMMY_ARMOR_MATERIAL; - } - /** * Location in the userdata of the ravenmind */ @@ -229,6 +181,6 @@ static HexAPI instance() { } static ResourceLocation modLoc(String s) { - return new ResourceLocation(MOD_ID, s); + return ResourceLocation.fromNamespaceAndPath(MOD_ID, s); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java index fe85fec5b3..30134b7198 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java @@ -1,39 +1,40 @@ package at.petrak.hexcasting.api.advancements; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import io.wispforest.endec.SerializationContext; import net.minecraft.advancements.critereon.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; +import java.util.Optional; + public class FailToCastGreatSpellTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "fail_to_cast_great_spell"); + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "fail_to_cast_great_spell"); - @Override - public ResourceLocation getId() { - return ID; + public void trigger(ServerPlayer player) { + super.trigger(player, e -> true); } @Override - protected Instance createInstance(JsonObject json, ContextAwarePredicate predicate, DeserializationContext context) { - return new Instance(predicate); - } - - public void trigger(ServerPlayer player) { - super.trigger(player, e -> true); + public Codec codec() { + return Instance.CODEC; } - public static class Instance extends AbstractCriterionTriggerInstance { - public Instance(ContextAwarePredicate predicate) { - super(ID, predicate); - } + public static record Instance(Optional predicate) implements SimpleInstance { - @Override - public ResourceLocation getCriterion() { - return ID; - } + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> (instance.group( + ContextAwarePredicate.CODEC.optionalFieldOf("predicate").forGetter(Instance::predicate) + )).apply(instance, Instance::new)); public JsonObject serializeToJson(SerializationContext pConditions) { return new JsonObject(); } + + @Override + public Optional player() { + return Optional.empty(); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java index 0be502c86e..041e0d3fb2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java @@ -4,75 +4,70 @@ import com.mojang.brigadier.StringReader; import com.mojang.brigadier.exceptions.BuiltInExceptionProvider; import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.serialization.Codec; import net.minecraft.advancements.critereon.MinMaxBounds; import net.minecraft.util.GsonHelper; import javax.annotation.Nullable; import java.util.Objects; +import java.util.Optional; import java.util.function.Function; -public class MinMaxLongs extends MinMaxBounds { +public record MinMaxLongs(Optional min, Optional max, Optional minSq, Optional maxSq) implements MinMaxBounds { public static final MinMaxLongs ANY = new MinMaxLongs(null, null); - @Nullable - private final Long minSq; - @Nullable - private final Long maxSq; - private static MinMaxLongs create(StringReader reader, @Nullable Long min, @Nullable Long max) throws CommandSyntaxException { - if (min != null && max != null && min > max) { + public static final Codec CODEC = MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); + + private MinMaxLongs(Optional longA, Optional longB) { + this(longA, longB, squareOpt(longA), squareOpt(longB)); + } + private static MinMaxLongs create(StringReader reader, Optional min, Optional max) throws CommandSyntaxException { + if (min.isPresent() && max.isPresent() && min.get() > max.get()) { throw ERROR_SWAPPED.createWithContext(reader); } else { return new MinMaxLongs(min, max); } } - @Nullable - private static Long squareOpt(@Nullable Long l) { - return l == null ? null : l * l; - } - private MinMaxLongs(@Nullable Long min, @Nullable Long max) { - super(min, max); - this.minSq = squareOpt(min); - this.maxSq = squareOpt(max); + + + private static Optional squareOpt(Optional l) { + return l.map((double_) -> double_ * double_); } public static MinMaxLongs exactly(long l) { - return new MinMaxLongs(l, l); + return new MinMaxLongs(Optional.of(l), Optional.of(l)); } public static MinMaxLongs between(long min, long max) { - return new MinMaxLongs(min, max); + return new MinMaxLongs(Optional.of(min), Optional.of(max)); } public static MinMaxLongs atLeast(long min) { - return new MinMaxLongs(min, null); + return new MinMaxLongs(Optional.of(min), null); } public static MinMaxLongs atMost(long max) { - return new MinMaxLongs(null, max); + return new MinMaxLongs(null, Optional.of(max)); } public boolean matches(long l) { - if (this.min != null && this.min > l) { + if (this.min.isPresent() && this.min.get() > l) { return false; } else { - return this.max == null || this.max >= l; + return this.max.isEmpty() || this.max.get() >= l; } } public boolean matchesSqr(long l) { - if (this.minSq != null && this.minSq > l) { + if (this.minSq.isPresent() && this.minSq.get() > l) { return false; } else { - return this.maxSq == null || this.maxSq >= l; + return this.maxSq.isEmpty() || this.maxSq.get() >= l; } } - public static MinMaxLongs fromJson(@Nullable JsonElement json) { - return fromJson(json, ANY, GsonHelper::convertToLong, MinMaxLongs::new); - } - public static MinMaxLongs fromReader(StringReader reader) throws CommandSyntaxException { return fromReader(reader, (l) -> l); } @@ -80,6 +75,16 @@ public static MinMaxLongs fromReader(StringReader reader) throws CommandSyntaxEx public static MinMaxLongs fromReader(StringReader reader, Function map) throws CommandSyntaxException { BuiltInExceptionProvider builtInExceptions = CommandSyntaxException.BUILT_IN_EXCEPTIONS; Objects.requireNonNull(builtInExceptions); - return fromReader(reader, MinMaxLongs::create, Long::parseLong, builtInExceptions::readerInvalidInt, map); + return MinMaxBounds.fromReader(reader, MinMaxLongs::create, Long::parseLong, builtInExceptions::readerInvalidLong, map); + } + + @Override + public Optional min() { + return Optional.empty(); + } + + @Override + public Optional max() { + return Optional.empty(); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java index b1661e869e..91ee1eb42f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java @@ -2,15 +2,19 @@ import at.petrak.hexcasting.api.mod.HexConfig; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.advancements.critereon.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; +import java.util.Optional; + // https://github.com/TelepathicGrunt/Bumblezone/blob/latest-released/src/main/java/com/telepathicgrunt/the_bumblezone/advancements/CleanupStickyHoneyResidueTrigger.java // https://github.com/VazkiiMods/Botania/blob/b8706e2e0bba20f67f1e103559a4ce39d63d48f9/src/main/java/vazkii/botania/common/advancements/CorporeaRequestTrigger.java public class OvercastTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "overcast"); + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "overcast"); private static final String TAG_MEDIA_GENERATED = "media_generated"; private static final String TAG_HEALTH_USED = "health_used"; @@ -18,20 +22,6 @@ public class OvercastTrigger extends SimpleCriterionTrigger { var mediaToHealth = HexConfig.common().mediaToHealthRate(); @@ -40,41 +30,19 @@ public void trigger(ServerPlayer player, int mediaGenerated) { }); } - public static class Instance extends AbstractCriterionTriggerInstance { - protected final MinMaxBounds.Ints mediaGenerated; - // This is the *proporttion* of the health bar. - protected final MinMaxBounds.Doubles healthUsed; - // DID YOU KNOW THERES ONE TO CHECK THE WORLD TIME, BUT NOT THE HEALTH!? - protected final MinMaxBounds.Doubles healthLeft; - - public Instance(ContextAwarePredicate predicate, MinMaxBounds.Ints mediaGenerated, - MinMaxBounds.Doubles healthUsed, MinMaxBounds.Doubles healthLeft) { - super(OvercastTrigger.ID, predicate); - this.mediaGenerated = mediaGenerated; - this.healthUsed = healthUsed; - // DID YOU KNOW THERE'S ONE TO CHECK THE FUCKING C A T T Y P E BUT NOT THE HEALTH - this.healthLeft = healthLeft; - } + @Override + public Codec codec() { + return null; + } - @Override - public ResourceLocation getCriterion() { - return ID; - } + public record Instance(MinMaxBounds.Ints mediaGenerated, MinMaxBounds.Doubles healthUsed, MinMaxBounds.Doubles healthLeft, Optional predicate) implements SimpleInstance { - @Override - public JsonObject serializeToJson(SerializationContext ctx) { - JsonObject json = super.serializeToJson(ctx); - if (!this.mediaGenerated.isAny()) { - json.add(TAG_MEDIA_GENERATED, this.mediaGenerated.serializeToJson()); - } - if (!this.healthUsed.isAny()) { - json.add(TAG_HEALTH_USED, this.healthUsed.serializeToJson()); - } - if (!this.healthLeft.isAny()) { - json.add(TAG_HEALTH_LEFT, this.healthLeft.serializeToJson()); - } - return json; - } + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> (instance.group( + MinMaxBounds.Ints.CODEC.fieldOf("mediaGenerated").forGetter(Instance::mediaGenerated), + MinMaxBounds.Doubles.CODEC.fieldOf("healthUsed").forGetter(Instance::healthUsed), + MinMaxBounds.Doubles.CODEC.fieldOf("healthLeft").forGetter(Instance::healthLeft), + EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(Instance::player) + )).apply(instance, Instance::new)); private boolean test(int mediaGeneratedIn, double healthUsedIn, float healthLeftIn) { return this.mediaGenerated.matches(mediaGeneratedIn) @@ -82,5 +50,10 @@ private boolean test(int mediaGeneratedIn, double healthUsedIn, float healthLeft // DID YOU KNOW ALL THE ENEITYT PREDICATES ARE HARD-CODED AND YOU CANT MAKE NEW ONES && this.healthLeft.matches(healthLeftIn); } + + @Override + public Optional player() { + return null; + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java index d610807f59..d9e0587374 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java @@ -1,63 +1,42 @@ package at.petrak.hexcasting.api.advancements; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.advancements.critereon.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; +import java.util.Optional; + public class SpendMediaTrigger extends SimpleCriterionTrigger { - private static final ResourceLocation ID = new ResourceLocation("hexcasting", "spend_media"); + private static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath("hexcasting", "spend_media"); private static final String TAG_MEDIA_SPENT = "media_spent"; private static final String TAG_MEDIA_WASTED = "media_wasted"; - @Override - public ResourceLocation getId() { - return ID; + public void trigger(ServerPlayer player, long mediaSpent, long mediaWasted) { + super.trigger(player, inst -> inst.test(mediaSpent, mediaWasted)); } @Override - protected Instance createInstance(JsonObject json, ContextAwarePredicate predicate, - DeserializationContext context) { - return new Instance(predicate, - MinMaxLongs.fromJson(json.get(TAG_MEDIA_SPENT)), - MinMaxLongs.fromJson(json.get(TAG_MEDIA_WASTED))); + public Codec codec() { + return Instance.CODEC; } - public void trigger(ServerPlayer player, long mediaSpent, long mediaWasted) { - super.trigger(player, inst -> inst.test(mediaSpent, mediaWasted)); - } + public static record Instance(MinMaxLongs mediaSpent, MinMaxLongs mediaWasted) implements SimpleInstance { + public static final Codec CODEC = RecordCodecBuilder.create((instance) -> instance.group( + MinMaxLongs.CODEC.fieldOf("mediaSpent").forGetter(Instance::mediaSpent), + MinMaxLongs.CODEC.fieldOf("mediaWasted").forGetter(Instance::mediaWasted) + ).apply(instance, Instance::new)); - public static class Instance extends AbstractCriterionTriggerInstance { - protected final MinMaxLongs mediaSpent; - protected final MinMaxLongs mediaWasted; - - public Instance(ContextAwarePredicate predicate, MinMaxLongs mediaSpent, - MinMaxLongs mediaWasted) { - super(SpendMediaTrigger.ID, predicate); - this.mediaSpent = mediaSpent; - this.mediaWasted = mediaWasted; - } - - @Override - public ResourceLocation getCriterion() { - return ID; + private boolean test(long mediaSpentIn, long mediaWastedIn) { + return this.mediaSpent.matches(mediaSpentIn) && this.mediaWasted.matches(mediaWastedIn); } @Override - public JsonObject serializeToJson(SerializationContext ctx) { - JsonObject json = super.serializeToJson(ctx); - if (!this.mediaSpent.isAny()) { - json.add(TAG_MEDIA_SPENT, this.mediaSpent.serializeToJson()); - } - if (!this.mediaWasted.isAny()) { - json.add(TAG_MEDIA_WASTED, this.mediaWasted.serializeToJson()); - } - return json; - } - - private boolean test(long mediaSpentIn, long mediaWastedIn) { - return this.mediaSpent.matches(mediaSpentIn) && this.mediaWasted.matches(mediaWastedIn); + public Optional player() { + return Optional.empty(); } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java b/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java index e531ddb12d..dbcce5cc87 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/block/HexBlockEntity.java @@ -18,24 +18,6 @@ public HexBlockEntity(BlockEntityType pType, BlockPos pWorldPosition, BlockSt protected abstract void loadModData(CompoundTag tag); - @Override - protected void saveAdditional(CompoundTag pTag) { - this.saveModData(pTag); - } - - @Override - public void load(CompoundTag pTag) { - super.load(pTag); - this.loadModData(pTag); - } - - @Override - public CompoundTag getUpdateTag() { - CompoundTag tag = new CompoundTag(); - this.saveModData(tag); - return tag; - } - @Override public Packet getUpdatePacket() { return ClientboundBlockEntityDataPacket.create(this); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java index f95fa84f01..2a36ae2699 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java @@ -178,21 +178,23 @@ public CompoundTag save() { } public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { - var startPos = NbtUtils.readBlockPos(nbt.getCompound(TAG_IMPETUS_POS)); + var startPos = NbtUtils.readBlockPos(nbt, TAG_IMPETUS_POS); var startDir = Direction.values()[nbt.getByte(TAG_IMPETUS_DIR)]; var knownPositions = new HashSet(); var knownTag = nbt.getList(TAG_KNOWN_POSITIONS, Tag.TAG_COMPOUND); for (var tag : knownTag) { - knownPositions.add(NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE))); + var blockPos = NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE), TAG_KNOWN_POSITIONS); + blockPos.ifPresent(knownPositions::add); } var reachedPositions = new ArrayList(); var reachedTag = nbt.getList(TAG_REACHED_POSITIONS, Tag.TAG_COMPOUND); for (var tag : reachedTag) { - reachedPositions.add(NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE))); + var blockPos = NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE), TAG_REACHED_POSITIONS); + blockPos.ifPresent(reachedPositions::add); } - var currentPos = NbtUtils.readBlockPos(nbt.getCompound(TAG_CURRENT_POS)); + var currentPos = NbtUtils.readBlockPos(nbt, TAG_CURRENT_POS); var enteredFrom = Direction.values()[nbt.getByte(TAG_ENTERED_FROM)]; var image = CastingImage.loadFromNbt(nbt.getCompound(TAG_IMAGE), world); @@ -204,7 +206,7 @@ public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { if (nbt.contains(TAG_PIGMENT, Tag.TAG_COMPOUND)) pigment = FrozenPigment.fromNBT(nbt.getCompound(TAG_PIGMENT)); - return new CircleExecutionState(startPos, startDir, knownPositions, reachedPositions, currentPos, + return new CircleExecutionState(startPos.get(), startDir, knownPositions, reachedPositions, currentPos.get(), enteredFrom, image, caster, pigment); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java index 19458cbc8e..6255816d05 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java @@ -99,8 +99,9 @@ default Tier opBreakHarvestLevel() { // Simple extensions for resource location configs public static boolean anyMatch(List keys, ResourceLocation key) { for (String s : keys) { - if (ResourceLocation.isValidResourceLocation(s)) { - var rl = new ResourceLocation(s); + var strings = s.split(":"); + if (ResourceLocation.isValidNamespace(strings[0]) && ResourceLocation.isValidPath(strings[1])) { + var rl = ResourceLocation.parse(s); if (rl.equals(key)) { return true; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java index f5cd478e0e..a9250440d7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java @@ -36,7 +36,7 @@ public static FrozenPigment fromNBT(CompoundTag tag) { } try { CompoundTag stackTag = tag.getCompound(TAG_STACK); - var stack = ItemStack.of(stackTag); + var stack = ItemStack.(stackTag); var uuid = tag.getUUID(TAG_OWNER); return new FrozenPigment(stack, uuid); } catch (NullPointerException exn) { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt index 8dcfea6f4e..aa9b31a516 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt @@ -7,6 +7,7 @@ import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.casting.math.HexCoord import net.minecraft.ChatFormatting +import net.minecraft.advancements.AdvancementHolder import net.minecraft.core.HolderLookup import net.minecraft.core.Registry import net.minecraft.nbt.* @@ -15,6 +16,7 @@ import net.minecraft.network.chat.MutableComponent import net.minecraft.network.chat.Style import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation +import net.minecraft.server.ServerAdvancementManager import net.minecraft.tags.TagKey import net.minecraft.world.InteractionHand import net.minecraft.world.item.ItemStack @@ -22,6 +24,7 @@ import net.minecraft.world.phys.Vec2 import net.minecraft.world.phys.Vec3 import java.lang.ref.WeakReference import java.util.* +import kotlin.jvm.optionals.getOrNull import kotlin.math.absoluteValue import kotlin.math.max import kotlin.math.min @@ -322,3 +325,4 @@ fun isOfTag(registry: Registry, loc: ResourceLocation, tag: TagKey): B return isOfTag(registry, key, tag) } + diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt index 9bf750fb6c..847f2a38a5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt @@ -5,11 +5,14 @@ package at.petrak.hexcasting.api.utils import at.petrak.hexcasting.common.components.VariantItemComponent +import net.minecraft.advancements.AdvancementHolder import net.minecraft.core.component.DataComponents import net.minecraft.nbt.* +import net.minecraft.server.ServerAdvancementManager import net.minecraft.world.item.ItemStack import net.minecraft.world.item.component.CustomData import java.util.* +import kotlin.jvm.optionals.getOrNull private inline fun T?.getIf(key: K, predicate: T?.(K) -> Boolean, get: T.(K) -> E): E? = getIf(key, predicate, get, null) @@ -20,6 +23,16 @@ private inline fun T?.getIf(key: K, predicate: T?.(K) -> Boolean return default } +fun AdvancementHolder.isChildOf(root: AdvancementHolder, serverAdvancementManager: ServerAdvancementManager): Boolean { + var current = this + while (true) { + if (current.equals(root)) return true + var parentOpt = serverAdvancementManager.get(current.value.parent.getOrNull() ?: return false) ?: return false + + current = parentOpt + } +} + // ======================================================================================================== CompoundTag // Checks for containment diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java index 8cc89c1f29..ac7262e9b9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/ItemHexHolderComponent.java @@ -9,6 +9,7 @@ import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; +import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.component.CustomData; import java.util.List; @@ -16,7 +17,7 @@ public record ItemHexHolderComponent(List hex) { public static final ItemHexHolderComponent EMPTY = new ItemHexHolderComponent(List.of()); public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( - Iota.IOTA_CODEC.listOf().fieldOf("datum").forGetter(ItemHexHolderComponent::hex) + Iota.IOTA_CODEC.listOf().fieldOf("patterns").forGetter(ItemHexHolderComponent::hex) ).apply(instance, ItemHexHolderComponent::new)); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( Iota.IOTA_STREAM_CODEC.apply(ByteBufCodecs.list()), @@ -27,4 +28,9 @@ public record ItemHexHolderComponent(List hex) { .persistent(CODEC) .networkSynchronized(STREAM_CODEC) .build(); + + public static List hex(ItemStack stack) { + ItemHexHolderComponent comp = stack.get(COMPONENT_TYPE); + return comp != null ? comp.hex() : List.of(); + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java b/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java index 1b6318bf0c..e0e4d9f164 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/components/PigmentItemComponent.java @@ -4,6 +4,6 @@ import net.minecraft.core.component.DataComponentType; public record PigmentItemComponent(PigmentItem item) { - public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() + public static final DataComponentType COMPONENT_TYPE = DataComponentType.builder() .build(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java index 0ff996b907..32e11dd0d5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java @@ -95,54 +95,4 @@ public Consumer defaultBrainsweepingBehavior() { public FrozenPigment getColorizer(Player player) { return IXplatAbstractions.INSTANCE.getPigment(player); } - - ArmorMaterial ARMOR_MATERIAL = new ArmorMaterial() { - - @Override - public int getDurabilityForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getDefenseForType(ArmorItem.Type type) { - return 0; - } - - @Override - public int getEnchantmentValue() { - return 0; - } - - @NotNull - @Override - public SoundEvent getEquipSound() { - return SoundEvents.ARMOR_EQUIP_LEATHER; - } - - @NotNull - @Override - public Ingredient getRepairIngredient() { - return Ingredient.EMPTY; - } - - @Override - public String getName() { - return "robes"; - } - - @Override - public float getToughness() { - return 0; - } - - @Override - public float getKnockbackResistance() { - return 0; - } - }; - - @Override - public ArmorMaterial robesMaterial() { - return ARMOR_MATERIAL; - } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java index d5b059f5f7..713c7e3c73 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java @@ -10,8 +10,8 @@ import net.minecraft.world.level.block.state.BlockState; public class ItemJewelerHammer extends PickaxeItem { - public ItemJewelerHammer(Tier tier, int damageMod, float attackSpeedMod, Properties props) { - super(tier, damageMod, attackSpeedMod, props); + public ItemJewelerHammer(Tier tier, Properties props) { + super(tier, props); } public static boolean shouldFailToBreak(Player player, BlockState state, BlockPos pos) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java index 4b77873f29..473800785c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java @@ -4,7 +4,7 @@ import at.petrak.hexcasting.common.lib.HexAttributes; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; -import net.minecraft.core.BlockSource; +import net.minecraft.core.dispenser.BlockSource; import net.minecraft.core.dispenser.OptionalDispenseItemBehavior; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.ai.attributes.Attribute; @@ -19,17 +19,16 @@ import java.util.UUID; +import static at.petrak.hexcasting.api.HexAPI.modLoc; + public class ItemLens extends Item implements HexBaubleItem { // Wearable, // The 0.1 is *additive* - public static final AttributeModifier GRID_ZOOM = new AttributeModifier( - UUID.fromString("59d739b8-d419-45f7-a4ea-0efee0e3adf5"), - "Scrying Lens Zoom", 0.33, AttributeModifier.Operation.MULTIPLY_BASE); + public static final AttributeModifier GRID_ZOOM = new AttributeModifier(modLoc("scrying_grid_zoom"), 0.33, AttributeModifier.Operation.ADD_MULTIPLIED_BASE); public static final AttributeModifier SCRY_SIGHT = new AttributeModifier( - UUID.fromString("e2e6e5d4-f978-4c11-8fdc-82a5af83385c"), - "Scrying Lens Sight", 1.0, AttributeModifier.Operation.ADDITION); + modLoc("scrying_sight"), 1.0, AttributeModifier.Operation.ADD_VALUE); public ItemLens(Properties pProperties) { super(pProperties); @@ -42,16 +41,6 @@ ItemStack execute(@NotNull BlockSource world, @NotNull ItemStack stack) { }); } - @Override - public Multimap getDefaultAttributeModifiers(EquipmentSlot slot) { - var out = HashMultimap.create(super.getDefaultAttributeModifiers(slot)); - if (slot == EquipmentSlot.HEAD || slot == EquipmentSlot.MAINHAND || slot == EquipmentSlot.OFFHAND) { - out.put(HexAttributes.GRID_ZOOM, GRID_ZOOM); - out.put(HexAttributes.SCRY_SIGHT, SCRY_SIGHT); - } - return out; - } - @Override public Multimap getHexBaubleAttrs(ItemStack stack) { HashMultimap out = HashMultimap.create(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java index 3d2f347bee..52e88072fd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -49,11 +50,11 @@ public InteractionResultHolder use(Level level, Player player, Intera return InteractionResultHolder.success(handStack); } - Advancement unfoundLore = null; + AdvancementHolder unfoundLore = null; var shuffled = new ArrayList<>(NAMES); Collections.shuffle(shuffled); for (var advID : shuffled) { - var adv = splayer.server.getAdvancements().getAdvancement(advID); + var adv = splayer.server.getAdvancements().get(advID); if (adv == null) { continue; // uh oh } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index c571aadf58..81dea2138b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -17,7 +17,7 @@ public class ItemStaff extends Item { // 0 = normal. 1 = old. 2 = cherry preview - public static final ResourceLocation FUNNY_LEVEL_PREDICATE = new ResourceLocation(HexAPI.MOD_ID, "funny_level"); + public static final ResourceLocation FUNNY_LEVEL_PREDICATE = ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, "funny_level"); public ItemStaff(Properties pProperties) { super(pProperties); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java b/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java deleted file mode 100644 index 3ec73cbdc6..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java +++ /dev/null @@ -1,19 +0,0 @@ -package at.petrak.hexcasting.common.items.armor; - -import at.petrak.hexcasting.api.HexAPI; -import net.minecraft.world.entity.EquipmentSlot; -import net.minecraft.world.item.ArmorItem; - -/** - * To get the armor model in; - * On forge: cursed self-mixin - * On fabric: hook in ClientInit - */ -public class ItemRobes extends ArmorItem { - public final ArmorItem.Type type; - - public ItemRobes(ArmorItem.Type type, Properties properties) { - super(HexAPI.instance().robesMaterial(), type, properties); - this.type = type; - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java index 586f8b2c02..87bd4531a4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java @@ -9,11 +9,16 @@ import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; import net.minecraft.ChatFormatting; +import net.minecraft.Util; import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; +import net.minecraft.advancements.AdvancementTree; +import net.minecraft.core.component.DataComponents; import net.minecraft.locale.Language; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.TextColor; +import net.minecraft.server.ServerAdvancementManager; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; @@ -35,6 +40,7 @@ import java.util.Locale; import static at.petrak.hexcasting.api.HexAPI.modLoc; +import static at.petrak.hexcasting.api.utils.NBTHelper.isChildOf; public class ItemCreativeUnlocker extends Item implements MediaHolderItem { @@ -70,7 +76,7 @@ public static boolean isDebug(ItemStack stack) { } public static boolean isDebug(ItemStack stack, String flag) { - if (!stack.is(HexItems.CREATIVE_UNLOCKER) || !stack.hasCustomHoverName()) { + if (!stack.is(HexItems.CREATIVE_UNLOCKER) || !stack.has(DataComponents.CUSTOM_NAME)) { return false; } var keywords = Arrays.asList(stack.getHoverName().getString().toLowerCase(Locale.ROOT).split(" ")); @@ -80,13 +86,13 @@ public static boolean isDebug(ItemStack stack, String flag) { return flag == null || keywords.contains(flag); } - public static Component infiniteMedia(Level level) { + public static Component infiniteMedia() { String prefix = "item.hexcasting.creative_unlocker."; String emphasis = Language.getInstance().getOrDefault(prefix + "for_emphasis"); MutableComponent emphasized = Component.empty(); for (int i = 0; i < emphasis.length(); i++) { - emphasized.append(rainbow(Component.literal("" + emphasis.charAt(i)), i, level)); + emphasized.append(rainbow(Component.literal("" + emphasis.charAt(i)), i)); } return emphasized; @@ -215,13 +221,14 @@ public InteractionResult useOn(UseOnContext context) { public ItemStack finishUsingItem(ItemStack stack, Level level, LivingEntity consumer) { if (level instanceof ServerLevel slevel && consumer instanceof ServerPlayer player) { var names = new ArrayList<>(ItemLoreFragment.NAMES); + var serverAdman = slevel.getServer().getAdvancements(); names.add(0, modLoc("root")); for (var name : names) { - var rootAdv = slevel.getServer().getAdvancements().getAdvancement(name); + var rootAdv = slevel.getServer().getAdvancements().get(name); if (rootAdv != null) { - var children = new ArrayList(); + var children = new ArrayList(); children.add(rootAdv); - addChildren(rootAdv, children); + addChildren(rootAdv, children, serverAdman); var adman = player.getAdvancements(); @@ -242,32 +249,30 @@ public ItemStack finishUsingItem(ItemStack stack, Level level, LivingEntity cons return copy; } - private static MutableComponent rainbow(MutableComponent component, int shift, Level level) { - if (level == null) { - return component.withStyle(ChatFormatting.WHITE); - } - + private static MutableComponent rainbow(MutableComponent component, int shift) { return component.withStyle((s) -> s.withColor( - TextColor.fromRgb(Mth.hsvToRgb((level.getGameTime() + shift) * 2 % 360 / 360F, 1F, 1F)))); + TextColor.fromRgb(Mth.hsvToRgb(((float) Util.getMillis() / 50 + shift) * 2 % 360 / 360F, 1F, 1F)))); } @Override - public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltipComponents, - TooltipFlag isAdvanced) { - Component emphasized = infiniteMedia(level); + public void appendHoverText(ItemStack stack, Item.TooltipContext level, List tooltipComponents, + TooltipFlag isAdvanced) { + Component emphasized = infiniteMedia(); MutableComponent modName = Component.translatable("item.hexcasting.creative_unlocker.mod_name").withStyle( - (s) -> s.withColor(ItemMediaHolder.HEX_COLOR)); + (s) -> s.withColor(ItemMediaHolder.HEX_COLOR)); tooltipComponents.add( - Component.translatable("hexcasting.spelldata.onitem", emphasized).withStyle(ChatFormatting.GRAY)); + Component.translatable("hexcasting.spelldata.onitem", emphasized).withStyle(ChatFormatting.GRAY)); tooltipComponents.add(Component.translatable("item.hexcasting.creative_unlocker.tooltip", modName).withStyle(ChatFormatting.GRAY)); } - private static void addChildren(Advancement root, List out) { - for (Advancement kiddo : root.getChildren()) { - out.add(kiddo); - addChildren(kiddo, out); + private static void addChildren(AdvancementHolder root, List out, ServerAdvancementManager manager) { + var advList = manager.getAllAdvancements(); + for (AdvancementHolder holder : advList) { + if (isChildOf(holder, root, manager) && !out.contains(holder)) { + out.add(holder); + } } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java index afa1183fd2..d804d31734 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java @@ -87,12 +87,7 @@ public int getBarWidth(ItemStack pStack) { } @Override - public boolean canBeDepleted() { - return false; - } - - @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, + public void appendHoverText(ItemStack pStack, Item.TooltipContext pLevel, List pTooltipComponents, TooltipFlag pIsAdvanced) { var maxMedia = getMaxMedia(pStack); if (maxMedia > 0) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java index a189fd0703..eefd598dab 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java @@ -9,6 +9,9 @@ import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.api.utils.NBTHelper; +import at.petrak.hexcasting.common.components.ItemHexHolderComponent; +import at.petrak.hexcasting.common.components.ItemMediaHolderComponent; +import at.petrak.hexcasting.common.components.PigmentItemComponent; import at.petrak.hexcasting.common.msgs.MsgNewSpiralPatternsS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.nbt.CompoundTag; @@ -22,6 +25,7 @@ import net.minecraft.stats.Stats; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResultHolder; +import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.UseAnim; @@ -62,23 +66,12 @@ public boolean canProvideMedia(ItemStack stack) { @Override public boolean hasHex(ItemStack stack) { - return NBTHelper.hasList(stack, TAG_PROGRAM, Tag.TAG_COMPOUND); + return ItemHexHolderComponent.hex(stack).isEmpty(); } @Override public @Nullable List getHex(ItemStack stack, ServerLevel level) { - var patsTag = NBTHelper.getList(stack, TAG_PROGRAM, Tag.TAG_COMPOUND); - - if (patsTag == null) { - return null; - } - - var out = new ArrayList(); - for (var patTag : patsTag) { - CompoundTag tag = NBTHelper.getAsCompound(patTag); - out.add(IotaType.deserialize(tag, level)); - } - return out; + return ItemHexHolderComponent.hex(stack); } @Override @@ -97,10 +90,9 @@ public void writeHex(ItemStack stack, List program, @Nullable FrozenPigmen @Override public void clearHex(ItemStack stack) { - NBTHelper.remove(stack, TAG_PROGRAM); - NBTHelper.remove(stack, TAG_PIGMENT); - NBTHelper.remove(stack, TAG_MEDIA); - NBTHelper.remove(stack, TAG_MAX_MEDIA); + stack.remove(ItemHexHolderComponent.COMPONENT_TYPE); + stack.remove(PigmentItemComponent.COMPONENT_TYPE); + stack.remove(ItemMediaHolderComponent.COMPONENT_TYPE); } @Override @@ -113,6 +105,7 @@ public void clearHex(ItemStack stack) { @Override public InteractionResultHolder use(Level world, Player player, InteractionHand usedHand) { + EquipmentSlot slot = usedHand == InteractionHand.MAIN_HAND ? EquipmentSlot.MAINHAND : EquipmentSlot.OFFHAND; var stack = player.getItemInHand(usedHand); if (!hasHex(stack)) { return InteractionResultHolder.fail(stack); @@ -167,7 +160,7 @@ public InteractionResultHolder use(Level world, Player player, Intera if (broken) { stack.shrink(1); - player.broadcastBreakEvent(usedHand); + player.onEquippedItemBroken(stack.getItem(), slot); return InteractionResultHolder.consume(stack); } else { return InteractionResultHolder.success(stack); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java index c895177f47..6ce75671e9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.item.PigmentItem; import at.petrak.hexcasting.api.pigment.ColorProvider; import at.petrak.paucal.api.PaucalAPI; +import at.petrak.paucal.xplat.common.ContributorsManifest; import com.google.gson.JsonElement; import com.google.gson.JsonPrimitive; import net.minecraft.world.item.Item; @@ -28,7 +29,7 @@ protected static class MyColorProvider extends ColorProvider { private final int[] colors; MyColorProvider(UUID owner) { - var contributor = PaucalAPI.instance().getContributor(owner); + var contributor = ContributorsManifest.getContributor(owner); if (contributor != null) { var colorList = contributor.otherVals().getAsJsonArray("hexcasting:colorizer"); if (colorList != null) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index f379d059c3..71322aadd0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -72,7 +72,7 @@ public InteractionResultHolder use(Level world, Player player, Intera } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, + public void appendHoverText(ItemStack pStack, Item.TooltipContext bruh, List pTooltipComponents, TooltipFlag pIsAdvanced) { IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java index 8d08c9923f..df32e4f682 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java @@ -64,7 +64,7 @@ public void writeDatum(ItemStack stack, Iota datum) { } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, List pTooltipComponents, + public void appendHoverText(ItemStack pStack, Item.TooltipContext pLevel, List pTooltipComponents, TooltipFlag pIsAdvanced) { IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java index b7521f7619..6dda363d79 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java @@ -6,6 +6,7 @@ import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.utils.NBTHelper; import net.minecraft.ChatFormatting; +import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; @@ -46,7 +47,7 @@ public ItemSpellbook(Properties properties) { } @Override - public void appendHoverText(ItemStack stack, @Nullable Level level, List tooltip, + public void appendHoverText(ItemStack stack, Item.TooltipContext level, List tooltip, TooltipFlag isAdvanced) { boolean sealed = isSealed(stack); boolean empty = false; @@ -103,8 +104,8 @@ public void inventoryTick(ItemStack stack, Level pLevel, Entity pEntity, int pSl int shiftedIdx = Math.max(1, index); String nameKey = String.valueOf(shiftedIdx); CompoundTag names = NBTHelper.getOrCreateCompound(stack, TAG_PAGE_NAMES); - if (stack.hasCustomHoverName()) { - names.putString(nameKey, Component.Serializer.toJson(stack.getHoverName())); + if (stack.has(DataComponents.CUSTOM_NAME)) { + names.putString(nameKey, Component.Serializer.toJson(stack.get(DataComponents.CUSTOM_NAME).copy(), pLevel.registryAccess())); } else { names.remove(nameKey); } @@ -221,7 +222,7 @@ public static int highestPage(ItemStack stack) { }).max(Integer::compare).orElse(0); } - public static int rotatePageIdx(ItemStack stack, boolean increase) { + public static int rotatePageIdx(ItemStack stack, boolean increase, Level level) { int idx = getPage(stack, 0); if (idx != 0) { idx += increase ? 1 : -1; @@ -235,9 +236,9 @@ public static int rotatePageIdx(ItemStack stack, boolean increase) { String nameKey = String.valueOf(shiftedIdx); String name = NBTHelper.getString(names, nameKey); if (name != null) { - stack.setHoverName(Component.Serializer.fromJson(name)); + stack.set(DataComponents.CUSTOM_NAME, Component.Serializer.fromJson(name, level.registryAccess())); } else { - stack.resetHoverName(); + stack.remove(DataComponents.CUSTOM_NAME); } return idx; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java index 9e867cc250..3174a28b13 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java @@ -50,7 +50,7 @@ public void writeDatum(ItemStack stack, @Nullable Iota iota) { } @Override - public void appendHoverText(ItemStack pStack, @Nullable Level pLevel, + public void appendHoverText(ItemStack pStack, Item.TooltipContext pLevel, List pTooltipComponents, TooltipFlag pIsAdvanced) { IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java index 05f06de4e8..391b9cac1b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexConfiguredFeatures.java @@ -12,6 +12,6 @@ public class HexConfiguredFeatures { public static final ResourceKey> CITRINE_EDIFIED_TREE = createKey("citrine_edified_tree"); private static ResourceKey> createKey(String name) { - return ResourceKey.create(Registries.CONFIGURED_FEATURE, new ResourceLocation(HexAPI.MOD_ID, name)); + return ResourceKey.create(Registries.CONFIGURED_FEATURE, ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, name)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java index a85889e104..5b50791fa4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java @@ -18,6 +18,7 @@ import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.food.FoodProperties; import net.minecraft.world.item.*; +import net.minecraft.world.item.component.ItemAttributeModifiers; import org.jetbrains.annotations.Nullable; import java.util.*; @@ -67,7 +68,8 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemLens SCRYING_LENS = make("lens", new ItemLens( IXplatAbstractions.INSTANCE.addEquipSlotFabric(EquipmentSlot.HEAD) - .stacksTo(1))); + .stacksTo(1).attributes(ItemAttributeModifiers.builder() + .add().build()))); public static final ItemAbacus ABACUS = make("abacus", new ItemAbacus(unstackable())); public static final ItemThoughtKnot THOUGHT_KNOT = make("thought_knot", new ItemThoughtKnot(unstackable())); @@ -79,7 +81,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemArtifact ARTIFACT = make("artifact", new ItemArtifact(unstackable().rarity(Rarity.RARE))); public static final ItemJewelerHammer JEWELER_HAMMER = make("jeweler_hammer", - new ItemJewelerHammer(Tiers.IRON, 0, -2.8F, props().stacksTo(1).defaultDurability(Tiers.DIAMOND.getUses()))); + new ItemJewelerHammer(Tiers.IRON, props().stacksTo(1).durability(Tiers.DIAMOND.getUses()))); public static final ItemScroll SCROLL_SMOL = make("scroll_small", new ItemScroll(props(), 1)); public static final ItemScroll SCROLL_MEDIUM = make("scroll_medium", new ItemScroll(props(), 2)); @@ -134,7 +136,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod // BUFF SANDVICH public static final Item SUBMARINE_SANDWICH = make("sub_sandwich", - new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationMod(1.2f).build()))); + new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); public static final ItemLoreFragment LORE_FRAGMENT = make("lore_fragment", new ItemLoreFragment(unstackable() @@ -143,7 +145,7 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemCreativeUnlocker CREATIVE_UNLOCKER = make("creative_unlocker", new ItemCreativeUnlocker(unstackable() .rarity(Rarity.EPIC) - .food(new FoodProperties.Builder().nutrition(20).saturationMod(1f).alwaysEat().build()))); + .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); // diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index 6398bfea27..3dc6345d9c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -23,12 +23,12 @@ public static void register(BiConsumer r) { public static final MobEffect ENLARGE_GRID = make("enlarge_grid", new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, "d4afaf0f-df37-4253-9fa7-029e8e4415d9", - 0.25, AttributeModifier.Operation.MULTIPLY_TOTAL); + .addAttributeModifier(HexAttributes.GRID_ZOOM, modLoc("enlarge_grid"), + 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); public static final MobEffect SHRINK_GRID = make("shrink_grid", new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, "1ce492a9-8bf5-4091-a482-c6d9399e448a", - -0.2, AttributeModifier.Operation.MULTIPLY_TOTAL); + .addAttributeModifier(HexAttributes.GRID_ZOOM, modLoc("shrink_grid"), + -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); private static T make(String id, T effect) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt b/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt new file mode 100644 index 0000000000..015f7d4985 --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt @@ -0,0 +1,21 @@ +package at.petrak.hexcasting.common.misc + +import net.minecraft.core.RegistryAccess +import net.minecraft.world.Container +import net.minecraft.world.inventory.CraftingContainer +import net.minecraft.world.item.ItemStack +import net.minecraft.world.item.crafting.RecipeInput + +abstract class ContainerInput(val container: Container) : RecipeInput { + + + override fun getItem(i: Int): ItemStack? { + return container.getItem(i) + } + + abstract fun assemble(inv: CraftingContainer, access: RegistryAccess): ItemStack + + override fun size(): Int { + return container.containerSize + } +} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java index 22eed2d2cc..5953d14acb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java @@ -84,7 +84,7 @@ private void spellbook(ServerPlayer sender, InteractionHand hand, ItemStack stac delta = -delta; } - var newIdx = ItemSpellbook.rotatePageIdx(stack, delta < 0.0); + var newIdx = ItemSpellbook.rotatePageIdx(stack, delta < 0.0, sender.level()); var len = ItemSpellbook.highestPage(stack); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index 287a6816ec..f10f44e62e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe; +import at.petrak.hexcasting.common.misc.ContainerInput; import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; @@ -33,16 +34,11 @@ public record BrainsweepRecipe( BrainsweepeeIngredient entityIn, long mediaCost, BlockState result -) implements Recipe { +) implements Recipe { public boolean matches(BlockState blockIn, Entity victim, ServerLevel level) { return this.blockIn.test(blockIn) && this.entityIn.test(victim, level); } - @Override - public ResourceLocation getId() { - return id; - } - @Override public RecipeType getType() { return HexRecipeStuffRegistry.BRAINSWEEP_TYPE; @@ -55,17 +51,18 @@ public RecipeSerializer getSerializer() { // in order to get this to be a "Recipe" we need to do a lot of bending-over-backwards // to get the implementation to be satisfied even though we never use it - @Override - public boolean matches(Container pContainer, Level pLevel) { - return false; - } @Override - public ItemStack assemble(Container recipeInput, HolderLookup.Provider provider) { - return ItemStack.EMPTY; + public boolean matches(ContainerInput recipeInput, Level level) { + return false; } - @Override + @Override + public ItemStack assemble(ContainerInput recipeInput, HolderLookup.Provider provider) { + return null; + } + + @Override public boolean canCraftInDimensions(int pWidth, int pHeight) { return false; } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java deleted file mode 100644 index 570d6631be..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealSpellbookRecipe.java +++ /dev/null @@ -1,64 +0,0 @@ -package at.petrak.hexcasting.common.recipe; - -import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; -import at.petrak.hexcasting.common.items.storage.ItemSpellbook; -import at.petrak.hexcasting.common.lib.HexItems; -import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.core.NonNullList; -import net.minecraft.core.RegistryAccess; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.inventory.CraftingContainer; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.*; -import org.jetbrains.annotations.NotNull; - -public class SealSpellbookRecipe extends ShapelessRecipe { - public static final SimpleCraftingRecipeSerializer SERIALIZER = - new SimpleCraftingRecipeSerializer<>(SealSpellbookRecipe::new); - - private static ItemStack getSealedStack() { - ItemStack output = new ItemStack(HexItems.SPELLBOOK); - ItemSpellbook.setSealed(output, true); - NBTHelper.putString(output, IotaHolderItem.TAG_OVERRIDE_VISUALLY, "any"); - return output; - } - - private static NonNullList createIngredients() { - NonNullList ingredients = NonNullList.createWithCapacity(2); - ingredients.add(IXplatAbstractions.INSTANCE.getUnsealedIngredient(new ItemStack(HexItems.SPELLBOOK))); - ingredients.add(Ingredient.of(Items.HONEYCOMB)); - return ingredients; - } - - public SealSpellbookRecipe(ResourceLocation id, CraftingBookCategory category) { - super(id, "", category, getSealedStack(), createIngredients()); - } - - @Override - public @NotNull ItemStack assemble(CraftingContainer inv, RegistryAccess access) { - ItemStack out = ItemStack.EMPTY; - - for (int i = 0; i < inv.getContainerSize(); i++) { - var stack = inv.getItem(i); - if (stack.is(HexItems.SPELLBOOK)) { - out = stack.copy(); - break; - } - } - - if (!out.isEmpty()) { - ItemSpellbook.setSealed(out, true); - out.setCount(1); - } - - return out; - } - - @Override - public @NotNull RecipeSerializer getSerializer() { - return SERIALIZER; - } -} - diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java index 365d68fe59..788db08ed2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java @@ -4,15 +4,13 @@ import at.petrak.hexcasting.common.items.storage.ItemFocus; import at.petrak.hexcasting.common.items.storage.ItemSpellbook; import at.petrak.hexcasting.common.lib.HexItems; +import net.minecraft.core.HolderLookup; import net.minecraft.core.RegistryAccess; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.StringRepresentable; import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.CraftingBookCategory; -import net.minecraft.world.item.crafting.CustomRecipe; -import net.minecraft.world.item.crafting.RecipeSerializer; -import net.minecraft.world.item.crafting.SimpleCraftingRecipeSerializer; +import net.minecraft.world.item.crafting.*; import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; @@ -38,11 +36,11 @@ public boolean canCraftInDimensions(int width, int height) { } @Override - public boolean matches(CraftingContainer container, Level level) { + public boolean matches(CraftingInput container, Level level) { boolean foundComb = false; boolean foundSealee = false; - for (int i = 0; i < container.getContainerSize(); i++) { + for (int i = 0; i < container.ingredientCount(); i++) { var stack = container.getItem(i); if (this.sealee.isCorrectSealee(stack)) { if (foundSealee) return false; @@ -57,10 +55,10 @@ public boolean matches(CraftingContainer container, Level level) { } @Override - public ItemStack assemble(CraftingContainer inv, RegistryAccess registryAccess) { + public ItemStack assemble(CraftingInput inv, HolderLookup.Provider provider) { ItemStack sealee = ItemStack.EMPTY; - for (int i = 0; i < inv.getContainerSize(); i++) { + for (int i = 0; i < inv.ingredientCount(); i++) { var stack = inv.getItem(i); if (this.sealee.isCorrectSealee(stack)) { sealee = stack.copy(); diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java index d095b06044..52d71e3592 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java @@ -21,18 +21,20 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; +import java.util.Optional; import java.util.function.Consumer; public class HexAdvancements extends PaucalAdvancementSubProvider { public static final OvercastTrigger.Instance ENLIGHTEN = - new OvercastTrigger.Instance(ContextAwarePredicate.ANY, - MinMaxBounds.Ints.ANY, + new OvercastTrigger.Instance(MinMaxBounds.Ints.ANY, // add a little bit of slop here. use 80% or more health ... MinMaxBounds.Doubles.atLeast(0.8), // and be left with under 1 healthpoint (half a heart) // TODO this means if 80% of your health is less than half a heart, so if you have 2.5 hearts or // less, you can't become enlightened. - MinMaxBounds.Doubles.between(Double.MIN_NORMAL, 1.0)); + MinMaxBounds.Doubles.between(Double.MIN_NORMAL, 1.0), + Optional.empty() + ); public HexAdvancements() { super(HexAPI.MOD_ID); diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java index 5aaf071208..1e1408c593 100644 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/mixin/accessor/CriteriaTriggersAccessor.java @@ -7,7 +7,8 @@ @Mixin(CriteriaTriggers.class) public interface CriteriaTriggersAccessor { - @Invoker("register") + + @Invoker(value = "register", remap = false) static > T hex$register(T trigger) { throw new UnsupportedOperationException(); } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java index 3c10fb9d4f..a1aa0cf4bd 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java @@ -10,7 +10,9 @@ import dev.emi.emi.api.render.EmiTexture; import dev.emi.emi.api.stack.EmiIngredient; import dev.emi.emi.api.stack.EmiStack; +import net.minecraft.core.Holder; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.crafting.RecipeHolder; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -44,13 +46,13 @@ public void register(EmiRegistry registry) { registry.addWorkstation(PHIAL, EmiIngredient.of(HexTags.Items.STAVES)); registry.addWorkstation(EDIFY, EmiIngredient.of(HexTags.Items.STAVES)); - for (BrainsweepRecipe recipe : registry.getRecipeManager() + for (RecipeHolder recipe : registry.getRecipeManager() .getAllRecipesFor(HexRecipeStuffRegistry.BRAINSWEEP_TYPE)) { - var inputBlocks = EmiIngredient.of(recipe.blockIn().getDisplayedStacks().stream() + var inputBlocks = EmiIngredient.of(recipe.value().blockIn().getDisplayedStacks().stream() .map(EmiStack::of).toList()); - var inputEntity = new BrainsweepeeEmiStack(recipe.entityIn()); - var output = EmiStack.of(recipe.result().getBlock()); - registry.addRecipe(new EmiBrainsweepRecipe(inputBlocks, inputEntity, output, recipe.getId())); + var inputEntity = new BrainsweepeeEmiStack(recipe.value().entityIn()); + var output = EmiStack.of(recipe.value().result().getBlock()); + registry.addRecipe(new EmiBrainsweepRecipe(inputBlocks, inputEntity, output, recipe.id())); } if (PhialRecipeStackBuilder.shouldAddRecipe()) { diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 737caa04ce..7756e93277 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -81,6 +81,8 @@ dependencies { modImplementation "io.wispforest:accessories-neoforge:$accessoriesVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") + compileOnly("mezz.jei:jei-${minecraftVersion}-neoforge-api:${jeiVersion}") + runtimeOnly("mezz.jei:jei-${minecraftVersion}-neoforge:${jeiVersion}") // "Required due to issues with JIJ dependency resolving in arch or something" // https://github.com/wisp-forest/accessories diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index 13e6cfd972..52319de18b 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -6,3 +6,4 @@ kotlinForForgeVersion=5.6.0 curiosVersion=5.2.0-beta.3 caelusVersion=7.0.1+1.21.1 +jeiVersion=19.25.1.328 diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java index bdba8678ca..2fb088f785 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapClientCastingStack.java @@ -3,9 +3,6 @@ import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.forge.cap.HexCapabilities; import net.minecraft.world.entity.player.Player; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.LogicalSide; import java.util.function.Supplier; From 8ade16d5f66b9cb0148603b146d253e239af09e0 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Thu, 27 Nov 2025 22:40:40 -0600 Subject: [PATCH 11/51] Biiiiiig fixes :3 --- .../FailToCastGreatSpellTrigger.java | 5 - .../api/advancements/MinMaxLongs.java | 104 ++++---------- .../hexcasting/api/casting/ParticleSpray.kt | 3 + .../circles/BlockEntityAbstractImpetus.java | 11 -- .../casting/circles/CircleExecutionState.java | 19 +-- .../casting/eval/env/PlayerBasedCastEnv.java | 5 - .../hexcasting/api/casting/iota/Iota.java | 30 ---- .../hexcasting/api/casting/iota/IotaType.java | 97 ------------- .../petrak/hexcasting/api/mod/HexConfig.java | 9 -- .../hexcasting/api/pigment/FrozenPigment.java | 23 --- .../petrak/hexcasting/api/utils/NBTHelper.kt | 114 --------------- .../client/RegisterClientStuff.java | 22 ++- .../hexcasting/client/gui/GuiSpellcasting.kt | 5 - .../client/render/HexAdditionalRenderers.java | 5 +- .../common/blocks/BlockConjured.java | 7 - .../blocks/akashic/BlockAkashicBookshelf.java | 12 +- .../impetuses/BlockEntityLookingImpetus.java | 11 -- .../impetuses/BlockEntityRedstoneImpetus.java | 7 - .../impetuses/BlockLookingImpetus.java | 10 +- .../impetuses/BlockRedstoneImpetus.java | 14 +- .../impetuses/BlockRightClickImpetus.java | 5 + .../decoration/BlockAmethystDirectional.java | 11 +- .../blocks/decoration/BlockHexWoodButton.java | 4 - .../casting/actions/spells/OpEdifySapling.kt | 1 + .../command/ListPerWorldPatternsCommand.java | 8 -- .../common/entities/EntityWallScroll.java | 65 +-------- .../hexcasting/common/impl/HexAPIImpl.java | 3 - .../hexcasting/common/items/ItemLens.java | 28 ---- .../items/magic/ItemCreativeUnlocker.java | 4 +- .../common/items/storage/ItemAbacus.java | 17 --- .../common/items/storage/ItemFocus.java | 6 - .../common/items/storage/ItemScroll.java | 48 ------- .../common/items/storage/ItemSpellbook.java | 17 --- .../common/items/storage/ItemThoughtKnot.java | 4 - .../hexcasting/common/lib/HexBlocks.java | 11 -- .../common/lib/HexCreativeTabs.java | 4 +- .../hexcasting/common/lib/HexItems.java | 20 --- .../hexcasting/common/lib/HexMobEffects.java | 8 -- .../common/misc/AkashicTreeGrower.java | 66 ++------- .../hexcasting/common/msgs/MsgBeepS2C.java | 43 ------ .../hexcasting/common/msgs/MsgBlinkS2C.java | 26 ---- .../common/msgs/MsgCastParticleS2C.java | 46 ------ .../msgs/MsgClearSpiralPatternsS2C.java | 24 ---- .../common/msgs/MsgNewSpellPatternC2S.java | 39 ------ .../common/msgs/MsgNewSpellPatternS2C.java | 36 ----- .../common/msgs/MsgNewSpiralPatternsS2C.java | 29 ---- .../common/msgs/MsgNewWallScrollS2C.java | 40 ------ .../common/msgs/MsgOpenSpellGuiS2C.java | 38 ----- .../msgs/MsgRecalcWallScrollDisplayS2C.java | 21 --- .../common/msgs/MsgShiftScrollC2S.java | 59 +------- .../common/recipe/BrainsweepRecipe.java | 52 ------- .../common/recipe/SealThingsRecipe.java | 11 -- .../hexcasting/datagen/HexAdvancements.java | 7 +- .../datagen/tag/HexBlockTagProvider.java | 2 +- .../datagen/tag/HexItemTagProvider.java | 2 +- .../server/ScrungledPatternsSave.java | 4 +- .../hexcasting/xplat/IXplatAbstractions.java | 18 +-- .../src/main/resources/hexplat.accesswidener | 15 -- Fabric/build.gradle | 18 ++- Fabric/gradle.properties | 2 +- .../fabric/FabricHexClientInitializer.kt | 12 +- .../hexcasting/fabric/FabricHexConfig.java | 6 +- .../hexcasting/fabric/FabricHexInitializer.kt | 54 ++++++-- .../fabric/cc/CCFavoredPigment.java | 4 +- .../hexcasting/fabric/cc/CCPatterns.java | 5 +- .../fabric/cc/CCStaffcastImage.java | 19 +-- .../fabric/cc/HexCardinalComponents.java | 56 +++----- .../fabric/cc/adimpl/CCEntityIotaHolder.java | 9 +- .../fabric/cc/adimpl/CCHexHolder.java | 12 ++ .../fabric/cc/adimpl/CCItemIotaHolder.java | 32 ++++- .../fabric/cc/adimpl/CCMediaHolder.java | 22 +++ .../fabric/cc/adimpl/CCPigment.java | 1 - .../fabric/cc/adimpl/CCVariantItem.java | 13 +- .../datagen/HexFabricConditionsBuilder.java | 71 ++++------ .../datagen/HexFabricDataGenerators.java | 13 +- .../accessories/AccessoriesApiInterop.java | 47 +++++++ .../LensAccessoryRenderer.java} | 24 ++-- .../interop/emi/BrainsweepeeEmiStack.java | 2 +- .../interop/trinkets/TrinketsApiInterop.java | 58 -------- .../fabric/loot/FabricHexLootModJankery.java | 19 +-- .../FabricMixinReloadableServerResources.java | 19 --- .../mixin/client/FabricModelManagerMixin.java | 6 +- .../fabric/network/FabricPacketHandler.java | 22 +-- .../FabricModConditionalIngredient.java | 29 +--- .../recipe/FabricUnsealedIngredient.java | 32 ++--- .../fabric/xplat/FabricClientXplatImpl.java | 4 +- .../fabric/xplat/FabricXplatImpl.java | 72 ++++++---- Neoforge/build.gradle | 45 +++--- Neoforge/gradle.properties | 2 +- .../forge/ForgeHexClientInitializer.java | 13 +- .../hexcasting/forge/ForgeHexConfig.java | 15 -- .../hexcasting/forge/ForgeHexInitializer.java | 39 ------ .../forge/cap/ForgeCapabilityHandler.java | 131 ------------------ .../hexcasting/forge/cap/HexCapabilities.java | 38 ----- .../interop/curios/CuriosApiInterop.java | 11 -- .../forge/loot/ForgeHexAmethystLootMod.java | 4 +- .../forge/network/ForgePacketHandler.java | 32 ----- .../forge/network/MsgAltioraUpdateAck.java | 58 ++------ .../forge/network/MsgBrainsweepAck.java | 63 +++------ .../forge/network/MsgPigmentUpdateAck.java | 53 ++----- .../network/MsgSentinelStatusUpdateAck.java | 81 ++--------- .../forge/recipe/ForgeUnsealedIngredient.java | 46 ------ .../forge/xplat/ForgeClientXplatImpl.java | 16 --- .../forge/xplat/ForgeXplatImpl.java | 103 +------------- gradle.properties | 2 +- settings.gradle | 10 +- 106 files changed, 549 insertions(+), 2251 deletions(-) create mode 100644 Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/AccessoriesApiInterop.java rename Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/{trinkets/LensTrinketRenderer.java => accessories/LensAccessoryRenderer.java} (55%) delete mode 100644 Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/trinkets/TrinketsApiInterop.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java index 79c7d4f0cf..f58dfab3a9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java @@ -34,10 +34,5 @@ public static record Instance(Optional player) implements public Optional player() { return player; } - - @Override - public Optional player() { - return Optional.empty(); - } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java index f67446e43a..15ecc74267 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java @@ -5,34 +5,27 @@ import com.mojang.serialization.Codec; import net.minecraft.advancements.critereon.MinMaxBounds; -<<<<<<< HEAD -import javax.annotation.Nullable; -import java.util.Objects; -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 import java.util.Optional; import java.util.function.Function; -public record MinMaxLongs(Optional min, Optional max, Optional minSq, Optional maxSq) implements MinMaxBounds { -<<<<<<< HEAD - public static final MinMaxLongs ANY = new MinMaxLongs(null, null); +public record MinMaxLongs( + Optional min, + Optional max, + Optional minSq, + Optional maxSq +) implements MinMaxBounds { + public static final Codec CODEC = + MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); - public static final Codec CODEC = MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); - - private MinMaxLongs(Optional longA, Optional longB) { - this(longA, longB, squareOpt(longA), squareOpt(longB)); - } -======= - public static final Codec CODEC = MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); - - public static final MinMaxLongs ANY = new MinMaxLongs(Optional.empty(), Optional.empty()); + public static final MinMaxLongs ANY = + new MinMaxLongs(Optional.empty(), Optional.empty()); private MinMaxLongs(Optional min, Optional max) { this(min, max, squareOpt(min), squareOpt(max)); } ->>>>>>> refs/remotes/slava/devel/port-1.21 - private static MinMaxLongs create(StringReader reader, Optional min, Optional max) throws CommandSyntaxException { + private static MinMaxLongs create(StringReader reader, Optional min, Optional max) + throws CommandSyntaxException { if (min.isPresent() && max.isPresent() && min.get() > max.get()) { throw ERROR_SWAPPED.createWithContext(reader); } else { @@ -40,20 +33,12 @@ private static MinMaxLongs create(StringReader reader, Optional min, Optio } } -<<<<<<< HEAD - - - - private static Optional squareOpt(Optional l) { - return l.map((double_) -> double_ * double_); -======= private static Optional squareOpt(Optional value) { - return value.map(p_297909_ -> p_297909_ * p_297909_); ->>>>>>> refs/remotes/slava/devel/port-1.21 + return value.map(v -> v * v); } - public static MinMaxLongs exactly(long l) { - return new MinMaxLongs(Optional.of(l), Optional.of(l)); + public static MinMaxLongs exactly(long value) { + return new MinMaxLongs(Optional.of(value), Optional.of(value)); } public static MinMaxLongs between(long min, long max) { @@ -61,29 +46,6 @@ public static MinMaxLongs between(long min, long max) { } public static MinMaxLongs atLeast(long min) { -<<<<<<< HEAD - return new MinMaxLongs(Optional.of(min), null); - } - - public static MinMaxLongs atMost(long max) { - return new MinMaxLongs(null, Optional.of(max)); - } - - public boolean matches(long l) { - if (this.min.isPresent() && this.min.get() > l) { - return false; - } else { - return this.max.isEmpty() || this.max.get() >= l; - } - } - - public boolean matchesSqr(long l) { - if (this.minSq.isPresent() && this.minSq.get() > l) { - return false; - } else { - return this.maxSq.isEmpty() || this.maxSq.get() >= l; - } -======= return new MinMaxLongs(Optional.of(min), Optional.empty()); } @@ -92,38 +54,28 @@ public static MinMaxLongs atMost(long max) { } public boolean matches(long value) { - return (this.min.isEmpty() || this.min.get() <= value) && (this.max.isEmpty() || this.max.get() >= value); + return (this.min.isEmpty() || this.min.get() <= value) + && (this.max.isEmpty() || this.max.get() >= value); } public boolean matchesSqr(long value) { - return (this.minSq.isEmpty() || this.minSq.get() <= value) && (this.maxSq.isEmpty() || this.maxSq.get() >= value); ->>>>>>> refs/remotes/slava/devel/port-1.21 + return (this.minSq.isEmpty() || this.minSq.get() <= value) + && (this.maxSq.isEmpty() || this.maxSq.get() >= value); } public static MinMaxLongs fromReader(StringReader reader) throws CommandSyntaxException { - return fromReader(reader, (l) -> l); + return fromReader(reader, l -> l); } -<<<<<<< HEAD - public static MinMaxLongs fromReader(StringReader reader, Function map) throws CommandSyntaxException { - BuiltInExceptionProvider builtInExceptions = CommandSyntaxException.BUILT_IN_EXCEPTIONS; - Objects.requireNonNull(builtInExceptions); - return MinMaxBounds.fromReader(reader, MinMaxLongs::create, Long::parseLong, builtInExceptions::readerInvalidLong, map); - } - - @Override - public Optional min() { - return Optional.empty(); - } - - @Override - public Optional max() { - return Optional.empty(); -======= - public static MinMaxLongs fromReader(StringReader reader, Function formatter) throws CommandSyntaxException { + public static MinMaxLongs fromReader(StringReader reader, Function formatter) + throws CommandSyntaxException { return MinMaxBounds.fromReader( - reader, MinMaxLongs::create, Long::parseLong, CommandSyntaxException.BUILT_IN_EXCEPTIONS::readerInvalidLong, formatter + reader, + MinMaxLongs::create, + Long::parseLong, + CommandSyntaxException.BUILT_IN_EXCEPTIONS::readerInvalidLong, + formatter ); ->>>>>>> refs/remotes/slava/devel/port-1.21 } } + diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt index 966e6abe18..f9d9eacef1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt @@ -17,6 +17,7 @@ import net.minecraft.world.phys.Vec3 */ data class ParticleSpray(val pos: Vec3, val vel: Vec3, val fuzziness: Double, val spread: Double, val count: Int = 20) { companion object { + @JvmStatic val STREAM_CODEC: StreamCodec = StreamCodec.composite( PaucalCodecs.VEC3, ParticleSpray::pos, @@ -38,6 +39,8 @@ data class ParticleSpray(val pos: Vec3, val vel: Vec3, val fuzziness: Double, va } } + + fun sprayParticles(world: ServerLevel, color: FrozenPigment) { IXplatAbstractions.INSTANCE.sendPacketNear(this.pos, 128.0, world, MsgCastParticleS2C(this, color)) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index 20b6825d6c..c37ed07f58 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -295,15 +295,9 @@ protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { tag.putLong(TAG_MEDIA, this.media); if (this.displayMsg != null && this.displayItem != null) { -<<<<<<< HEAD - tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg, level.registryAccess())); - var itemTag = new CompoundTag(); - this.displayItem.save(level.registryAccess(), itemTag); -======= tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg, registries)); var itemTag = new CompoundTag(); this.displayItem.save(registries, itemTag); ->>>>>>> refs/remotes/slava/devel/port-1.21 tag.put(TAG_ERROR_DISPLAY, itemTag); } if (this.pigment != null) @@ -324,13 +318,8 @@ protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { } if (tag.contains(TAG_ERROR_MSG, Tag.TAG_STRING) && tag.contains(TAG_ERROR_DISPLAY, Tag.TAG_COMPOUND)) { -<<<<<<< HEAD - var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG), level.registryAccess()); - var display = ItemStack.parseOptional(level.registryAccess(), tag.getCompound(TAG_ERROR_DISPLAY)); -======= var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG), registries); var display = ItemStack.parseOptional(registries, tag); ->>>>>>> refs/remotes/slava/devel/port-1.21 this.displayMsg = msg; this.displayItem = display; } else { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java index 993ae26bbe..b62b4ec3c5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/CircleExecutionState.java @@ -175,40 +175,23 @@ public CompoundTag save() { } public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { -<<<<<<< HEAD - var startPos = NbtUtils.readBlockPos(nbt, TAG_IMPETUS_POS); -======= var startPos = NbtUtils.readBlockPos(nbt, TAG_IMPETUS_POS).orElseThrow(); ->>>>>>> refs/remotes/slava/devel/port-1.21 var startDir = Direction.values()[nbt.getByte(TAG_IMPETUS_DIR)]; var knownPositions = new HashSet(); var knownTag = nbt.getList(TAG_KNOWN_POSITIONS, Tag.TAG_COMPOUND); for (var tag : knownTag) { -<<<<<<< HEAD - var blockPos = NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE), TAG_KNOWN_POSITIONS); - blockPos.ifPresent(knownPositions::add); -======= var pos = readBlockPos(HexUtils.downcast(tag, IntArrayTag.TYPE).getAsIntArray()); pos.ifPresent(knownPositions::add); ->>>>>>> refs/remotes/slava/devel/port-1.21 } var reachedPositions = new ArrayList(); var reachedTag = nbt.getList(TAG_REACHED_POSITIONS, Tag.TAG_COMPOUND); for (var tag : reachedTag) { -<<<<<<< HEAD - var blockPos = NbtUtils.readBlockPos(HexUtils.downcast(tag, CompoundTag.TYPE), TAG_REACHED_POSITIONS); - blockPos.ifPresent(reachedPositions::add); - } - - var currentPos = NbtUtils.readBlockPos(nbt, TAG_CURRENT_POS); -======= var pos = readBlockPos(HexUtils.downcast(tag, IntArrayTag.TYPE).getAsIntArray()); pos.ifPresent(reachedPositions::add); } var currentPos = NbtUtils.readBlockPos(nbt, TAG_CURRENT_POS).orElseThrow(); ->>>>>>> refs/remotes/slava/devel/port-1.21 var enteredFrom = Direction.values()[nbt.getByte(TAG_ENTERED_FROM)]; var image = CastingImage.getCODEC().parse(NbtOps.INSTANCE, nbt.getCompound(TAG_IMAGE)).getOrThrow(); @@ -220,7 +203,7 @@ public static CircleExecutionState load(CompoundTag nbt, ServerLevel world) { if (nbt.contains(TAG_PIGMENT, Tag.TAG_COMPOUND)) pigment = FrozenPigment.CODEC.parse(NbtOps.INSTANCE, nbt.getCompound(TAG_PIGMENT)).getOrThrow(); - return new CircleExecutionState(startPos.get(), startDir, knownPositions, reachedPositions, currentPos.get(), + return new CircleExecutionState(startPos, startDir, knownPositions, reachedPositions, currentPos, enteredFrom, image, caster, pigment); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java index 89da8b5c97..dd5b73d701 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java @@ -177,16 +177,11 @@ protected long extractMediaFromInventory(long costLeft, boolean allowOvercast, b protected boolean canOvercast() { var adv = this.world.getServer().getAdvancements().get(modLoc("y_u_no_cast_angy")); -<<<<<<< HEAD - var advs = this.caster.getAdvancements(); - return advs.getOrStartProgress(adv).isDone(); -======= if(adv != null) { var advs = this.caster.getAdvancements(); return advs.getOrStartProgress(adv).isDone(); } return false; ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java index 2623d6121b..5f2b33455b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java @@ -13,29 +13,17 @@ import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.Codec; -<<<<<<< HEAD -import com.mojang.serialization.MapCodec; -import io.netty.buffer.ByteBuf; -======= import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; import net.minecraft.nbt.NbtOps; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -<<<<<<< HEAD -import net.minecraft.network.codec.ByteBufCodecs; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.world.item.component.CustomData; -======= import net.minecraft.network.chat.ComponentSerialization; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.FormattedCharSequence; import net.minecraft.world.level.Level; ->>>>>>> refs/remotes/slava/devel/port-1.21 import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -47,25 +35,7 @@ public abstract class Iota { @NotNull protected final Supplier> type; -<<<<<<< HEAD - public static final Codec IOTA_CODEC = HexIotaTypes.REGISTRY.byNameCodec() - .dispatch("type", Iota::getType, IotaType::codec); - - public static final StreamCodec IOTA_STREAM_CODEC = new StreamCodec<>() { - @Override - public void encode(RegistryFriendlyByteBuf buf, Iota iota) { - ByteBufCodecs.fromCodecWithRegistries(IOTA_CODEC).encode(buf, iota); - } - - public Iota decode(RegistryFriendlyByteBuf buf) { - var iota = ByteBufCodecs.fromCodecWithRegistries(IOTA_CODEC).decode(buf); return iota; - } - }; - - protected Iota(@NotNull IotaType type, @NotNull Object payload) { -======= protected Iota(@NotNull Supplier> type) { ->>>>>>> refs/remotes/slava/devel/port-1.21 this.type = type; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index e214aea2bb..66e4130482 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -3,13 +3,9 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -<<<<<<< HEAD -import com.mojang.datafixers.util.Pair; -======= import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.serialization.Codec; import com.mojang.serialization.DataResult; ->>>>>>> refs/remotes/slava/devel/port-1.21 import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; @@ -50,50 +46,7 @@ public abstract class IotaType { public abstract MapCodec codec(); -<<<<<<< HEAD - /** - * Get the color associated with this datum type. - */ - public abstract int color(); - - /** - * Get the MapCodec associated with this datum type. - */ - - public abstract MapCodec codec(); - - /** - * Get a display component that's the name of this iota type. - */ - public Component typeName() { - var key = HexIotaTypes.REGISTRY.getKey(this); - return Component.translatable("hexcasting.iota." + key) - .withStyle(style -> style.withColor(TextColor.fromRgb(color()))); - } - - public static CompoundTag serialize(Iota iota) { - var type = iota.getType(); - var typeId = HexIotaTypes.REGISTRY.getKey(type); - if (typeId == null) { - throw new IllegalStateException( - "Tried to serialize an unregistered iota type. Iota: " + iota - + " ; Type" + type.getClass().getTypeName()); - } - - // We check if it's too big on serialization; if it is we just return a garbage. - if (isTooLargeToSerialize(List.of(iota), 0)) { - // Garbage will never be too large so we just recurse - return serialize(new GarbageIota()); - } - var dataTag = iota.serialize(); - var out = new CompoundTag(); - out.putString(HexIotaTypes.KEY_TYPE, typeId.toString()); - out.put(HexIotaTypes.KEY_DATA, dataTag); - return out; - } -======= public abstract StreamCodec streamCodec(); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static boolean isTooLargeToSerialize(Iterable examinee) { return isTooLargeToSerialize(examinee, 1); @@ -109,57 +62,7 @@ private static boolean isTooLargeToSerialize(Iterable examinee, int starti return totalSize >= HexIotaTypes.MAX_SERIALIZATION_TOTAL; } -<<<<<<< HEAD - /** - * This method attempts to find the type from the {@code type} key. - * See {@link IotaType#serialize(Iota)} for the storage format. - * - * @return {@code null} if it cannot get the type. - */ - @org.jetbrains.annotations.Nullable - public static IotaType getTypeFromTag(CompoundTag tag) { - if (!tag.contains(HexIotaTypes.KEY_TYPE, Tag.TAG_STRING)) { - return null; - } - var typeKey = tag.getString(HexIotaTypes.KEY_TYPE); - var typeLoc = ResourceLocation.tryParse(typeKey); - return HexIotaTypes.REGISTRY.get(typeLoc); - } - - /** - * Attempt to deserialize an iota from a tag. - *
- * Iotas are saved as such: - * - * { - * "type": "hexcasting:atype", - * "data": {...} - * } - * - */ - public static Iota deserialize(CompoundTag tag, ServerLevel world) { - var type = getTypeFromTag(tag); - if (type == null) { - return new GarbageIota(); - } - var data = tag.get(HexIotaTypes.KEY_DATA); - if (data == null) { - return new GarbageIota(); - } - Iota deserialized; - try { - deserialized = Objects.requireNonNullElse(type.deserialize(data, world), new NullIota()); - } catch (IllegalArgumentException exn) { - HexAPI.LOGGER.warn("Caught an exception deserializing an iota", exn); - deserialized = new GarbageIota(); - } - return deserialized; - } - - private static Component brokenIota() { -======= public static Component brokenIota() { ->>>>>>> refs/remotes/slava/devel/port-1.21 return Component.translatable("hexcasting.spelldata.unknown") .withStyle(ChatFormatting.GRAY, ChatFormatting.ITALIC); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java index 99ecacddac..f22b1b82a2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexConfig.java @@ -106,18 +106,9 @@ default Tier opBreakHarvestLevel() { // Simple extensions for resource location configs public static boolean anyMatch(List keys, ResourceLocation key) { for (String s : keys) { -<<<<<<< HEAD - var strings = s.split(":"); - if (ResourceLocation.isValidNamespace(strings[0]) && ResourceLocation.isValidPath(strings[1])) { - var rl = ResourceLocation.parse(s); - if (rl.equals(key)) { - return true; - } -======= var rl = ResourceLocation.tryParse(s); if (rl != null && rl.equals(key)) { return true; ->>>>>>> refs/remotes/slava/devel/port-1.21 } } return false; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java index 1704e3af72..b9a42d6680 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java @@ -25,28 +25,6 @@ public record FrozenPigment(ItemStack item, UUID owner) { public static final Supplier DEFAULT = () -> new FrozenPigment(new ItemStack(HexItems.DEFAULT_PIGMENT), Util.NIL_UUID); -<<<<<<< HEAD - public CompoundTag serializeToNBT() { - var out = new CompoundTag(); - out.put(TAG_STACK, this.item.save(new CompoundTag())); - out.putUUID(TAG_OWNER, this.owner); - return out; - } - - public static FrozenPigment fromNBT(CompoundTag tag) { - if (tag.isEmpty()) { - return FrozenPigment.DEFAULT.get(); - } - try { - CompoundTag stackTag = tag.getCompound(TAG_STACK); - var stack = ItemStack.(stackTag); - var uuid = tag.getUUID(TAG_OWNER); - return new FrozenPigment(stack, uuid); - } catch (NullPointerException exn) { - return FrozenPigment.DEFAULT.get(); - } - } -======= public static Codec CODEC = RecordCodecBuilder.create(inst -> inst.group( ItemStack.CODEC.fieldOf("stack").forGetter(FrozenPigment::item), @@ -58,7 +36,6 @@ public static FrozenPigment fromNBT(CompoundTag tag) { UUIDUtil.STREAM_CODEC, FrozenPigment::owner, FrozenPigment::new ); ->>>>>>> refs/remotes/slava/devel/port-1.21 public ColorProvider getColorProvider() { return IXplatAbstractions.INSTANCE.getColorProvider(this); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt index 1ed566c381..15095adb09 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt @@ -2,7 +2,6 @@ package at.petrak.hexcasting.api.utils -import at.petrak.hexcasting.common.components.VariantItemComponent import net.minecraft.advancements.AdvancementHolder import net.minecraft.core.component.DataComponents import net.minecraft.nbt.* @@ -192,116 +191,3 @@ val Tag.asCompound get() = this as? CompoundTag ?: CompoundTag() // asString is defined in Tag val Tag.asList get() = this as? ListTag ?: ListTag() val Tag.asUUID: UUID get() = if (this is IntArrayTag && this.size == 4) NbtUtils.loadUUID(this) else UUID(0, 0) -<<<<<<< HEAD - -// ========================================================================================================== ItemStack - -// Checks for containment - -fun ItemStack.hasNumber(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasNumber(key) -fun ItemStack.hasByte(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasByte(key) -fun ItemStack.hasShort(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasShort(key) -fun ItemStack.hasInt(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasInt(key) -fun ItemStack.hasLong(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasLong(key) -fun ItemStack.hasFloat(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasFloat(key) -fun ItemStack.hasDouble(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasDouble(key) -fun ItemStack.hasLongArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasLongArray(key) -fun ItemStack.hasIntArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasIntArray(key) -fun ItemStack.hasByteArray(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasByteArray(key) -fun ItemStack.hasCompound(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasCompound(key) -fun ItemStack.hasString(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasString(key) -fun ItemStack.hasList(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key) -fun ItemStack.hasList(key: String, objType: Int) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key, objType) -fun ItemStack.hasList(key: String, objType: Byte) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasList(key, objType) -fun ItemStack.hasUUID(key: String) = get(DataComponents.CUSTOM_DATA)?.copyTag().hasUUID(key) - -@JvmName("contains") -fun ItemStack.containsTag(key: String) = get(DataComponents.CUSTOM_DATA)?.contains(key) - -@JvmName("contains") -fun ItemStack.containsTag(key: String, id: Byte) = get(DataComponents.CUSTOM_DATA)?.copyTag().contains(key, id) - -@JvmName("contains") -fun ItemStack.containsTag(key: String, id: Int) = get(DataComponents.CUSTOM_DATA)?.copyTag().contains(key, id) - -fun ItemStack.findVariantHolder() = get(VariantItemComponent.COMPONENT_TYPE) - - -// Puts -private fun ItemStack.updateCustomData(block: CompoundTag.() -> Unit) { - val old = this.get(DataComponents.CUSTOM_DATA) - val tag = (old?.copyTag() ?: CompoundTag()).apply(block) - this.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)) -} - -fun ItemStack.putBoolean(key: String, value: Boolean) = updateCustomData { putBoolean(key, value) }fun ItemStack.putByte(key: String, value: Byte) = updateCustomData { putByte(key, value) } -fun ItemStack.putShort(key: String, value: Short) = updateCustomData { putShort(key, value) } -fun ItemStack.putInt(key: String, value: Int) = updateCustomData { putInt(key, value) } -fun ItemStack.putLong(key: String, value: Long) = updateCustomData { putLong(key, value) } -fun ItemStack.putFloat(key: String, value: Float) = updateCustomData { putFloat(key, value) } -fun ItemStack.putDouble(key: String, value: Double) = updateCustomData { putDouble(key, value) } - -fun ItemStack.putLongArray(key: String, value: LongArray) = updateCustomData { putLongArray(key, value) } -fun ItemStack.putIntArray(key: String, value: IntArray) = updateCustomData { putIntArray(key, value) } -fun ItemStack.putByteArray(key: String, value: ByteArray) = updateCustomData { putByteArray(key, value) } -fun ItemStack.putCompound(key: String, value: CompoundTag) = updateCustomData { put(key, value) } -fun ItemStack.putString(key: String, value: String) = updateCustomData { putString(key, value) } -fun ItemStack.putList(key: String, value: ListTag) = updateCustomData { put(key, value) } -fun ItemStack.putUUID(key: String, value: UUID) = updateCustomData { putUUID(key, value) } - -// Remove - -fun ItemStack.remove(key: String) = updateCustomData { remove(key) } - -// Gets - -private fun ItemStack.customTag(): CompoundTag = - get(DataComponents.CUSTOM_DATA)?.copyTag() ?: CompoundTag() - - -@JvmOverloads -fun ItemStack.getBoolean(key: String, defaultExpected: Boolean = false) = - customTag().getBoolean(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getByte(key: String, defaultExpected: Byte = 0) = - customTag().getByte(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getShort(key: String, defaultExpected: Short = 0) = - customTag().getShort(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getInt(key: String, defaultExpected: Int = 0) = - customTag().getInt(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getLong(key: String, defaultExpected: Long = 0) = - customTag().getLong(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getFloat(key: String, defaultExpected: Float = 0f) = - customTag().getFloat(key).let { if (customTag().contains(key)) it else defaultExpected } - -@JvmOverloads -fun ItemStack.getDouble(key: String, defaultExpected: Double = 0.0) = - customTag().getDouble(key).let { if (customTag().contains(key)) it else defaultExpected } - -fun ItemStack.getLongArray(key: String) = customTag().getLongArray(key) -fun ItemStack.getIntArray(key: String) = customTag().getIntArray(key) -fun ItemStack.getByteArray(key: String) = customTag().getByteArray(key) -fun ItemStack.getCompound(key: String) = customTag().getCompound(key) -fun ItemStack.getString(key: String) = customTag().getString(key) -fun ItemStack.getList(key: String, objType: Int) = customTag().getList(key, objType) -fun ItemStack.getUUID(key: String) = customTag().getUUID(key) - -@JvmName("get") -fun ItemStack.getTag(key: String) = customTag().get(key) - -// Get-or-create - -fun ItemStack.getOrCreateCompound(key: String): CompoundTag = customTag().getOrCreateCompound(key) -fun ItemStack.getOrCreateList(key: String, objType: Byte) = customTag().getOrCreateList(key, objType) -fun ItemStack.getOrCreateList(key: String, objType: Int) = customTag().getOrCreateList(key, objType) -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 diff --git a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java index 1d4967d6c7..127a6ef0b1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java @@ -267,7 +267,25 @@ public static void onModelRegister(ResourceManager recMan, Consumer(); for (int i = 0; i < BlockQuenchedAllay.VARIANTS; i++) { - var variantLoc = new ModelResourceLocation(modLoc(locStart + blockLoc.getPath() + "_" + i), ModelResourceLocation.STANDALONE_VARIANT); + var variantLoc = new ModelResourceLocation(modLoc(locStart + blockLoc.getPath() + "_" + i), ModelResourceLocation.INVENTORY_VARIANT); var model = map.get(variantLoc); list.add(model); } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt index 8dfc16bcbc..b45e4923ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt @@ -294,13 +294,8 @@ class GuiSpellcasting constructor( return false } -<<<<<<< HEAD - override fun mouseScrolled(pDelta: Double, e: Double, f: Double, g: Double): Boolean { - super.mouseScrolled(pDelta, e, f, g) -======= override fun mouseScrolled(mouseX: Double, mouseY: Double, scrollX: Double, scrollY: Double): Boolean { super.mouseScrolled(mouseX, mouseY, scrollX, scrollY) ->>>>>>> refs/remotes/slava/devel/port-1.21 val mouseHandler = Minecraft.getInstance().mouseHandler diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java index 29def93978..2d8c543d03 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java @@ -14,6 +14,7 @@ import com.mojang.blaze3d.vertex.Tesselator; import com.mojang.blaze3d.vertex.VertexFormat; import com.mojang.datafixers.util.Pair; +import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.multiplayer.ClientLevel; @@ -44,7 +45,7 @@ public static void overlayLevel(PoseStack ps, float partialTick) { } } - public static void overlayGui(GuiGraphics graphics, float partialTicks) { + public static void overlayGui(GuiGraphics graphics, DeltaTracker partialTicks) { tryRenderScryingLensOverlay(graphics, partialTicks); } @@ -149,7 +150,7 @@ private static class Icos { } } - private static void tryRenderScryingLensOverlay(GuiGraphics graphics, float partialTicks) { + private static void tryRenderScryingLensOverlay(GuiGraphics graphics, DeltaTracker partialTicks) { var mc = Minecraft.getInstance(); var ps = graphics.pose(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java index 505d7c037a..616880da50 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjured.java @@ -34,17 +34,10 @@ public BlockConjured(Properties properties) { @Override public BlockState playerWillDestroy(Level pLevel, BlockPos pPos, BlockState pState, Player pPlayer) { -<<<<<<< HEAD - super.playerWillDestroy(pLevel, pPos, pState, pPlayer); - // For some reason the block doesn't play breaking noises. So we fix that! - pPlayer.playSound(SoundEvents.AMETHYST_BLOCK_BREAK, 1f, 1f); - return pState; -======= var res = super.playerWillDestroy(pLevel, pPos, pState, pPlayer); // For some reason the block doesn't play breaking noises. So we fix that! pPlayer.playSound(SoundEvents.AMETHYST_BLOCK_BREAK, 1f, 1f); return res; ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Nullable diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java index ef2499b732..8598c47f33 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicBookshelf.java @@ -41,15 +41,8 @@ public BlockAkashicBookshelf(Properties p_49795_) { } @Override -<<<<<<< HEAD - public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, - BlockHitResult pHit) { - if (pLevel.getBlockEntity(pPos) instanceof BlockEntityAkashicBookshelf shelf) { - var stack = pPlayer.getItemInHand(pHand); -======= protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hitResult) { if (level.getBlockEntity(pos) instanceof BlockEntityAkashicBookshelf shelf) { ->>>>>>> refs/remotes/slava/devel/port-1.21 if (stack.getItem() instanceof ItemScroll scroll) { if (!level.isClientSide()) { scroll.writeDatum(stack, new PatternIota(shelf.getPattern())); @@ -124,4 +117,9 @@ public BlockState rotate(BlockState pState, Rotation pRot) { public BlockState mirror(BlockState pState, Mirror pMirror) { return pState.rotate(pMirror.getRotation(pState.getValue(FACING))); } + + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java index 96f62485a9..387936a4a8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java @@ -37,20 +37,9 @@ public static void serverTick(Level level, BlockPos pos, BlockState bs, BlockEnt int prevLookAmt = self.lookAmount; int range = 20; -<<<<<<< HEAD - AABB box = AABB.ofSize( - Vec3.atCenterOf(pos), // center of the cube - range * 2 + 1, - range * 2 + 1, - range * 2 + 1 - ); - - var players = level.getEntitiesOfClass(ServerPlayer.class, box); -======= //TODO port: test AABB check, it's Vec3 now instead of BlockPos var players = level.getEntitiesOfClass(ServerPlayer.class, new AABB(pos.offset(-range, -range, -range).getCenter(), pos.offset(range, range, range).getCenter())); ->>>>>>> refs/remotes/slava/devel/port-1.21 ServerPlayer looker = null; for (var player : players) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java index 2bd98239c8..385b591e8a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java @@ -8,10 +8,7 @@ import com.mojang.datafixers.util.Pair; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -<<<<<<< HEAD -======= import net.minecraft.core.HolderLookup; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; @@ -113,12 +110,8 @@ public void applyScryingLensOverlay(List> lines, if (!plProfile.equals(resolvableProfile) || cachedDisplayStack == null) { cachedDisplayProfile = resolvableProfile; var head = new ItemStack(Items.PLAYER_HEAD); -<<<<<<< HEAD - head.set(DataComponents.PROFILE, new ResolvableProfile(cachedDisplayProfile)); -======= head.set(DataComponents.PROFILE, resolvableProfile); head.getItem().verifyComponentsAfterLoad(head); ->>>>>>> refs/remotes/slava/devel/port-1.21 cachedDisplayStack = head; } lines.add(new Pair<>(cachedDisplayStack, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java index 2555590fe8..f9edc217f1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockLookingImpetus.java @@ -22,13 +22,13 @@ public BlockLookingImpetus(Properties p_49795_) { } @Override -<<<<<<< HEAD - public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { - return null; -======= public BlockEntityType getBlockEntityType() { return HexBlockEntities.IMPETUS_LOOK_TILE; ->>>>>>> refs/remotes/slava/devel/port-1.21 + } + + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; } @Nullable diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java index 3b3fd21fd8..a79a2da738 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java @@ -38,6 +38,11 @@ public BlockEntityType getBlockEntityType( return HexBlockEntities.IMPETUS_REDSTONE_TILE; } + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { @@ -51,20 +56,11 @@ protected void createBlockStateDefinition(StateDefinition.Builder>>>>>> refs/remotes/slava/devel/port-1.21 tile.clearPlayer(); tile.sync(); level.playSound(null, pos, HexSounds.IMPETUS_REDSTONE_CLEAR, SoundSource.BLOCKS, 1f, 1f); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java index bb9520fdc0..3f442ef9e2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java @@ -25,6 +25,11 @@ public BlockEntityType getBlockEntityType( return HexBlockEntities.IMPETUS_RIGHTCLICK_TILE; } + @Override + public InteractionResult use(BlockState pState, Level pLevel, BlockPos pPos, Player pPlayer, InteractionHand pHand, BlockHitResult pHit) { + return null; + } + @Nullable @Override public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java index fb57cec731..946369429a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java @@ -9,11 +9,8 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.DirectionalBlock; -<<<<<<< HEAD -import net.minecraft.world.level.block.state.BlockBehaviour; -======= import net.minecraft.world.level.block.EndRodBlock; ->>>>>>> refs/remotes/slava/devel/port-1.21 +import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.phys.BlockHitResult; @@ -25,7 +22,6 @@ public BlockAmethystDirectional(Properties properties) { super(properties); } - public static final MapCodec CODEC = BlockBehaviour.simpleCodec(BlockAmethystDirectional::new); @Override protected MapCodec codec() { return CODEC; @@ -46,9 +42,4 @@ protected void createBlockStateDefinition(StateDefinition.Builder codec() { - return CODEC; - } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java index e54bfc862c..3676b5a009 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexWoodButton.java @@ -10,11 +10,7 @@ public class BlockHexWoodButton extends ButtonBlock { public BlockHexWoodButton(Properties $$0) { -<<<<<<< HEAD - super(BlockSetType.DARK_OAK,30, $$0); -======= super(BlockSetType.DARK_OAK, 30, $$0); ->>>>>>> refs/remotes/slava/devel/port-1.21 } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt index 386fad014e..415d4c2a13 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpEdifySapling.kt @@ -51,6 +51,7 @@ object OpEdifySapling : SpellAction { env.world, env.world.chunkSource.generator, pos, + bs, env.world.getRandom() ) if (success) break diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java index f27a8c24a3..2ff15760d8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java @@ -104,12 +104,8 @@ private static int giveAll(CommandSourceStack source, Collection t var pat = HexPattern.fromAngles(signature, startDir); var stack = new ItemStack(HexItems.SCROLL_LARGE); -<<<<<<< HEAD - stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); -======= stack.set(HexDataComponents.ACTION, key); stack.set(HexDataComponents.PATTERN, pat); ->>>>>>> refs/remotes/slava/devel/port-1.21 for (var player : targets) { var stackEntity = player.drop(stack, false); @@ -139,12 +135,8 @@ private static int giveOne(CommandSourceStack source, Collection t ResourceKey actionKey, HexPattern pat) { if (!targets.isEmpty()) { var stack = new ItemStack(HexItems.SCROLL_LARGE); -<<<<<<< HEAD - stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); -======= stack.set(HexDataComponents.ACTION, actionKey); stack.set(HexDataComponents.PATTERN, pat); ->>>>>>> refs/remotes/slava/devel/port-1.21 source.sendSuccess(() -> Component.translatable( diff --git a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java index 994d4ae076..4b8dc838ad 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java @@ -3,7 +3,6 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.utils.NBTHelper; -import at.petrak.hexcasting.common.components.ItemIotaHolderComponent; import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; @@ -16,11 +15,7 @@ import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; -<<<<<<< HEAD -import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; -======= import net.minecraft.network.protocol.common.ClientCommonPacketListener; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.network.syncher.EntityDataAccessor; @@ -72,20 +67,8 @@ public EntityWallScroll(Level world, BlockPos pos, Direction dir, ItemStack scro } public void recalculateDisplay() { -<<<<<<< HEAD - CompoundTag patternTag = scroll.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(ItemScroll.TAG_PATTERN); - var stuck = ItemStack.EMPTY.get(ItemIotaHolderComponent.COMPONENT_TYPE).iota(); - if (patternTag != null) { - this.pattern = HexPattern.fromNBT(patternTag); - this.isAncient = NBTHelper.hasString(scroll, ItemScroll.TAG_OP_ID); - } else { - this.pattern = null; - this.isAncient = false; - } -======= this.pattern = scroll.get(HexDataComponents.PATTERN); this.isAncient = scroll.has(HexDataComponents.ACTION); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -102,8 +85,6 @@ public void setShowsStrokeOrder(boolean b) { } @Override -<<<<<<< HEAD -======= protected AABB calculateBoundingBox(BlockPos pos, Direction p_direction) { float f = 0.46875F; Vec3 vec3 = Vec3.atCenterOf(pos).relative(p_direction, -0.46875); @@ -118,7 +99,6 @@ protected AABB calculateBoundingBox(BlockPos pos, Direction p_direction) { } @Override ->>>>>>> refs/remotes/slava/devel/port-1.21 public void dropItem(@Nullable Entity pBrokenEntity) { if (this.level().getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS)) { this.playSound(SoundEvents.PAINTING_BREAK, 1.0F, 1.0F); @@ -145,7 +125,7 @@ public InteractionResult interactAt(Player pPlayer, Vec3 pVec, InteractionHand p if (pPlayer.level() instanceof ServerLevel slevel) { IXplatAbstractions.INSTANCE.sendPacketNear(this.position(), 32.0, slevel, - new MsgRecalcWallScrollDisplayS2C(this.getId(), true)); + new MsgRecalcWallScrollDisplayS2C(this.getId(), true)); } else { // Beat the packet roundtrip to the punch to get a quicker visual this.recalculateDisplay(); @@ -155,44 +135,15 @@ public InteractionResult interactAt(Player pPlayer, Vec3 pVec, InteractionHand p return super.interactAt(pPlayer, pVec, pHand); } - @Override - protected AABB calculateBoundingBox(BlockPos blockPos, Direction direction) { - double x = this.pos.getX() + 0.5; double y = this.pos.getY() + 0.5; double z = this.pos.getZ() + 0.5; - double uh = 0.46875; - double sizeX = (this.blockSize * 16) % 32 == 0 ? 0.5 : 0.0; - double sizeY = (this.blockSize * 16) % 32 == 0 ? 0.5 : 0.0; - - x -= (double) direction.getStepX() * 0.46875; - z -= (double) direction.getStepZ() * 0.46875; - y += sizeY; - double width = (double) this.blockSize * 16; double height = (double) this.blockSize * 16; double length = (double) this.blockSize * 16; - if (direction.getAxis() == Direction.Axis.Z) { - length = 1.0; - } else { - width = 1.0; - } - - width /= 32.0; - height /= 32.0; - length /= 32.0; - return new AABB(x - width, y - height, z - length, x + width, y + height, z + length); - } - @Override public void playPlacementSound() { this.playSound(SoundEvents.PAINTING_PLACE, 1.0F, 1.0F); } -<<<<<<< HEAD - public ClientboundCustomPayloadPacket getAddEntityPacket() { - return IXplatAbstractions.INSTANCE.toVanillaClientboundPacket( - new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this, this.blockSize, this.pos), -======= @Override public Packet getAddEntityPacket(ServerEntity entity) { return IXplatAbstractions.INSTANCE.toVanillaClientboundPacket( new MsgNewWallScrollS2C(new ClientboundAddEntityPacket(this, this.direction.get3DDataValue(), this.getPos()), ->>>>>>> refs/remotes/slava/devel/port-1.21 pos, direction, scroll, getShowsStrokeOrder(), blockSize)); } @@ -212,11 +163,7 @@ public void readSpawnData(BlockPos pos, Direction dir, ItemStack scrollItem, @Override public void addAdditionalSaveData(CompoundTag tag) { tag.putByte("direction", (byte) this.direction.ordinal()); -<<<<<<< HEAD - tag.put("scroll", HexUtils.serializeToNBT(this.scroll, this.level().registryAccess())); -======= tag.put("scroll", this.scroll.save(registryAccess())); ->>>>>>> refs/remotes/slava/devel/port-1.21 tag.putBoolean("showsStrokeOrder", this.getShowsStrokeOrder()); tag.putInt("blockSize", this.blockSize); super.addAdditionalSaveData(tag); @@ -225,11 +172,7 @@ public void addAdditionalSaveData(CompoundTag tag) { @Override public void readAdditionalSaveData(CompoundTag tag) { this.direction = Direction.values()[tag.getByte("direction")]; -<<<<<<< HEAD - this.scroll = ItemStack.parseOptional(this.level().registryAccess(), tag.getCompound("scroll")); -======= this.scroll = ItemStack.parse(registryAccess(), tag.getCompound("scroll")).orElse(ItemStack.EMPTY); ->>>>>>> refs/remotes/slava/devel/port-1.21 this.blockSize = tag.getInt("blockSize"); this.setDirection(this.direction); @@ -246,15 +189,9 @@ public void moveTo(double pX, double pY, double pZ, float pYaw, float pPitch) { this.setPos(pX, pY, pZ); } -<<<<<<< HEAD - public void lerpTo(double pX, double pY, double pZ, float pYaw, float pPitch, int pPosRotationIncrements, - boolean pTeleport) { - BlockPos blockpos = this.pos.offset((int) (pX - this.getX()), (int) (pY - this.getY()), (int) (pZ - this.getZ())); -======= @Override public void lerpTo(double x, double y, double z, float yRot, float xRot, int steps) { BlockPos blockpos = this.pos.offset((int) (x - this.getX()), (int) (y - this.getY()), (int) (z - this.getZ())); ->>>>>>> refs/remotes/slava/devel/port-1.21 this.setPos(blockpos.getX(), blockpos.getY(), blockpos.getZ()); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java index 255e109e36..c80424c0a5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java @@ -96,8 +96,6 @@ public Consumer defaultBrainsweepingBehavior() { public FrozenPigment getColorizer(Player player) { return IXplatAbstractions.INSTANCE.getPigment(player); } -<<<<<<< HEAD -======= ArmorMaterial ARMOR_MATERIAL = new ArmorMaterial( Collections.emptyMap(), @@ -113,5 +111,4 @@ public FrozenPigment getColorizer(Player player) { public ArmorMaterial robesMaterial() { return ARMOR_MATERIAL; } ->>>>>>> refs/remotes/slava/devel/port-1.21 } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java index 5521c25d2b..c093ef4307 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java @@ -5,10 +5,7 @@ import at.petrak.hexcasting.common.lib.HexAttributes; import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; -<<<<<<< HEAD -======= import net.minecraft.core.Holder; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.core.dispenser.BlockSource; import net.minecraft.core.dispenser.OptionalDispenseItemBehavior; import net.minecraft.world.entity.EquipmentSlot; @@ -32,18 +29,11 @@ public class ItemLens extends Item implements HexBaubleItem { // Wearable, // The 0.1 is *additive* -<<<<<<< HEAD - public static final AttributeModifier GRID_ZOOM = new AttributeModifier(modLoc("scrying_grid_zoom"), 0.33, AttributeModifier.Operation.ADD_MULTIPLIED_BASE); - - public static final AttributeModifier SCRY_SIGHT = new AttributeModifier( - modLoc("scrying_sight"), 1.0, AttributeModifier.Operation.ADD_VALUE); -======= public static final AttributeModifier GRID_ZOOM = new AttributeModifier( HexAPI.modLoc("scrying_lens_zoom"), 0.33, AttributeModifier.Operation.ADD_MULTIPLIED_BASE); public static final AttributeModifier SCRY_SIGHT = new AttributeModifier( HexAPI.modLoc("scrying_lens_sight"), 1.0, AttributeModifier.Operation.ADD_VALUE); ->>>>>>> refs/remotes/slava/devel/port-1.21 public ItemLens(Properties pProperties) { super(pProperties); @@ -55,27 +45,9 @@ public ItemLens(Properties pProperties) { }); } - @Override -<<<<<<< HEAD - public Multimap getHexBaubleAttrs(ItemStack stack) { - HashMultimap out = HashMultimap.create(); -======= - public ItemAttributeModifiers getDefaultAttributeModifiers(ItemStack stack) { - return ItemAttributeModifiers.builder() - .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.HEAD) - .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.MAINHAND) - .add(HexAttributes.GRID_ZOOM, GRID_ZOOM, EquipmentSlotGroup.OFFHAND) - - .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.HEAD) - .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.MAINHAND) - .add(HexAttributes.SCRY_SIGHT, SCRY_SIGHT, EquipmentSlotGroup.OFFHAND) - .build(); - } - @Override public Multimap, AttributeModifier> getHexBaubleAttrs(ItemStack stack) { HashMultimap, AttributeModifier> out = HashMultimap.create(); ->>>>>>> refs/remotes/slava/devel/port-1.21 out.put(HexAttributes.GRID_ZOOM, GRID_ZOOM); out.put(HexAttributes.SCRY_SIGHT, SCRY_SIGHT); return out; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java index 8697b5ac42..60348c00e2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java @@ -8,8 +8,10 @@ import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; +import com.mojang.authlib.minecraft.client.MinecraftClient; import net.minecraft.ChatFormatting; import net.minecraft.advancements.AdvancementNode; +import net.minecraft.client.Minecraft; import net.minecraft.core.component.DataComponentType; import net.minecraft.core.component.DataComponents; import net.minecraft.locale.Language; @@ -243,7 +245,7 @@ private static MutableComponent rainbow(MutableComponent component, int shift, L @Override public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag isAdvanced) { - Component emphasized = infiniteMedia(context.level()); + Component emphasized = infiniteMedia(Minecraft.getInstance().level); MutableComponent modName = Component.translatable("item.hexcasting.creative_unlocker.mod_name").withStyle( (s) -> s.withColor(ItemMediaHolder.HEX_COLOR)); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index cf9fbf03c9..fc12ecb0f2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -23,25 +23,14 @@ import java.util.List; public class ItemAbacus extends Item implements IotaHolderItem { -<<<<<<< HEAD - public static final String TAG_VALUE = "abacus_value"; -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 public ItemAbacus(Properties pProperties) { super(pProperties); } @Override -<<<<<<< HEAD - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { - var datum = new DoubleIota(stack.get(DataComponents.CUSTOM_DATA).copyTag().getDouble(TAG_VALUE)); - return IotaType.serialize(datum); -======= public @Nullable Iota readIota(ItemStack stack) { return new DoubleIota(stack.getOrDefault(HexDataComponents.ABACUS_VALUE, 0.0)); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -81,13 +70,7 @@ public InteractionResultHolder use(Level world, Player player, Intera } @Override -<<<<<<< HEAD - public void appendHoverText(ItemStack pStack, Item.TooltipContext bruh, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); -======= public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { IotaHolderItem.appendHoverText(this, stack, tooltipComponents, tooltipFlag); ->>>>>>> refs/remotes/slava/devel/port-1.21 } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java index 90a49ec88e..e713477d43 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java @@ -58,14 +58,8 @@ public void writeDatum(ItemStack stack, Iota datum) { } @Override -<<<<<<< HEAD - public void appendHoverText(ItemStack pStack, Item.TooltipContext pLevel, List pTooltipComponents, - TooltipFlag pIsAdvanced) { - IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); -======= public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag tooltipFlag) { IotaHolderItem.appendHoverText(this, stack, tooltipComponents, tooltipFlag); ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static boolean isSealed(ItemStack stack) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java index aef89f0fcb..5e105c50f6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java @@ -7,13 +7,8 @@ import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; -import at.petrak.hexcasting.common.components.ItemIotaHolderComponent; import at.petrak.hexcasting.common.entities.EntityWallScroll; -<<<<<<< HEAD -import at.petrak.hexcasting.common.lib.HexItemComponents; -======= import at.petrak.hexcasting.common.lib.HexDataComponents; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; @@ -34,11 +29,7 @@ import net.minecraft.world.inventory.tooltip.TooltipComponent; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -<<<<<<< HEAD -import net.minecraft.world.item.component.CustomData; -======= import net.minecraft.world.item.TooltipFlag; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.gameevent.GameEvent; import net.minecraft.world.level.Level; @@ -69,20 +60,6 @@ public ItemScroll(Properties pProperties, int blockSize) { this.blockSize = blockSize; } -<<<<<<< HEAD - @Override - public @Nullable - CompoundTag readIotaTag(ItemStack stack) { - Iota pattern = Objects.requireNonNull(stack.get(ItemIotaHolderComponent.COMPONENT_TYPE)).iota(); - if (pattern == null) { - return null; - } - // We store only the data part of the iota; pretend the rest of it's there - var out = new CompoundTag(); - out.putString(HexIotaTypes.KEY_TYPE, "hexcasting:pattern"); - out.put(HexIotaTypes.KEY_DATA, pattern.serialize()); - return out; -======= // this produces a scroll that will load the correct pattern for your world once it ticks public static ItemStack withPerWorldPattern(ItemStack stack, ResourceKey action) { Item item = stack.getItem(); @@ -91,7 +68,6 @@ public static ItemStack withPerWorldPattern(ItemStack stack, ResourceKey>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -131,15 +107,9 @@ public InteractionResult useOn(UseOnContext ctx) { var scrollEntity = new EntityWallScroll(level, posInFront, direction, scrollStack, false, this.blockSize); // i guess -<<<<<<< HEAD - var component = itemstack.get(ItemIotaHolderComponent.COMPONENT_TYPE); - if (component != null) { - EntityType.updateCustomEntityTag(level, player, scrollEntity, CustomData.of((CompoundTag) component.iota().serialize())); -======= var customData = itemstack.get(DataComponents.CUSTOM_DATA); if (customData != null) { EntityType.updateCustomEntityTag(level, player, scrollEntity, customData); ->>>>>>> refs/remotes/slava/devel/port-1.21 } if (scrollEntity.survives()) { @@ -164,21 +134,12 @@ protected boolean mayPlace(Player pPlayer, Direction pDirection, ItemStack pHang @Override public Component getName(ItemStack pStack) { var descID = this.getDescriptionId(pStack); -<<<<<<< HEAD - var ancientId = pStack.get(DataComponents.CUSTOM_DATA).copyTag().getString(TAG_OP_ID); - if (ancientId != null) { - return Component.translatable(descID + ".of", - Component.translatable("hexcasting.action." + ResourceLocation.tryParse(ancientId))); - } else if (pStack.get(DataComponents.CUSTOM_DATA).contains(TAG_PATTERN)) { - var compound = pStack.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(TAG_PATTERN); -======= var ancientAction = pStack.get(HexDataComponents.ACTION); if (ancientAction != null) { return Component.translatable(descID + ".of", Component.translatable("hexcasting.action." + ancientAction.location())); } else if (pStack.has(HexDataComponents.PATTERN)) { var pattern = pStack.get(HexDataComponents.PATTERN); ->>>>>>> refs/remotes/slava/devel/port-1.21 var patternLabel = Component.literal(""); if (pattern != null) { patternLabel = Component.literal(": ").append(new InlinePatternData(pattern).asText(false)); @@ -216,20 +177,11 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List getTooltipImage(ItemStack stack) { -<<<<<<< HEAD - var compound = stack.get(DataComponents.CUSTOM_DATA).copyTag().getCompound(TAG_PATTERN); - if (!compound.equals(new CompoundTag())) { - var pattern = HexPattern.fromNBT(compound); - return Optional.of(new PatternTooltip( - pattern, - stack.get(DataComponents.CUSTOM_DATA).contains(TAG_PATTERN) -======= var pattern = stack.get(HexDataComponents.PATTERN); if (pattern != null && !stack.has(HexDataComponents.NEEDS_PURCHASE)) { return Optional.of(new PatternTooltip( pattern, stack.has(HexDataComponents.ACTION) ->>>>>>> refs/remotes/slava/devel/port-1.21 ? PatternTooltipComponent.ANCIENT_BG : PatternTooltipComponent.PRISTINE_BG)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java index b09cc3f190..d2523eb875 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java @@ -35,12 +35,7 @@ public ItemSpellbook(Properties properties) { } @Override -<<<<<<< HEAD - public void appendHoverText(ItemStack stack, Item.TooltipContext level, List tooltip, - TooltipFlag isAdvanced) { -======= public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag isAdvanced) { ->>>>>>> refs/remotes/slava/devel/port-1.21 boolean sealed = isSealed(stack); boolean empty = false; if (stack.has(HexDataComponents.SELECTED_PAGE)) { @@ -95,13 +90,6 @@ public void inventoryTick(ItemStack stack, Level level, Entity pEntity, int pSlo int shiftedIdx = Math.max(1, index); String nameKey = String.valueOf(shiftedIdx); -<<<<<<< HEAD - CompoundTag names = NBTHelper.getOrCreateCompound(stack, TAG_PAGE_NAMES); - if (stack.has(DataComponents.CUSTOM_NAME)) { - names.putString(nameKey, Component.Serializer.toJson(stack.get(DataComponents.CUSTOM_NAME).copy(), pLevel.registryAccess())); - } else { - names.remove(nameKey); -======= var customName = stack.get(DataComponents.CUSTOM_NAME); var savedNames = stack.get(HexDataComponents.PAGE_NAMES); @@ -126,7 +114,6 @@ public void inventoryTick(ItemStack stack, Level level, Entity pEntity, int pSlo } else { stack.set(HexDataComponents.PAGE_NAMES, mutNames); } ->>>>>>> refs/remotes/slava/devel/port-1.21 } } @@ -290,11 +277,7 @@ public static int rotatePageIdx(ItemStack stack, boolean increase, Level level) String nameKey = String.valueOf(shiftedIdx); Component name = names.get(nameKey); if (name != null) { -<<<<<<< HEAD - stack.set(DataComponents.CUSTOM_NAME, Component.Serializer.fromJson(name, level.registryAccess())); -======= stack.set(DataComponents.CUSTOM_NAME, name); ->>>>>>> refs/remotes/slava/devel/port-1.21 } else { stack.remove(DataComponents.CUSTOM_NAME); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java index 0d923d918a..2cc1ec3033 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java @@ -44,11 +44,7 @@ public void writeDatum(ItemStack stack, @Nullable Iota iota) { } @Override -<<<<<<< HEAD - public void appendHoverText(ItemStack pStack, Item.TooltipContext pLevel, -======= public void appendHoverText(ItemStack pStack, TooltipContext context, ->>>>>>> refs/remotes/slava/devel/port-1.21 List pTooltipComponents, TooltipFlag pIsAdvanced) { IotaHolderItem.appendHoverText(this, pStack, pTooltipComponents, pIsAdvanced); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index 48da941deb..5eaf30f7ea 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -201,15 +201,9 @@ private static BlockBehaviour.Properties quenched() { public static final Block SLATE_BRICKS = blockItem("slate_bricks", new Block(slateish().strength(2f, 4f))); public static final Block SLATE_BRICKS_SMALL = blockItem("slate_bricks_small", new Block(slateish().strength(2f, 4f))); public static final RotatedPillarBlock SLATE_PILLAR = blockItem("slate_pillar", new RotatedPillarBlock(slateish().strength(2f, 4f))); -<<<<<<< HEAD - public static final BlockHexFallingBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", - new BlockHexFallingBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) - .strength(0.5f).sound(SoundType.SAND).mapColor(DyeColor.byFireworkColor(0xff_b38ef3)))); -======= public static final ColoredFallingBlock AMETHYST_DUST_BLOCK = blockItem("amethyst_dust_block", new ColoredFallingBlock(new ColorRGBA(0xb38ef3_ff), BlockBehaviour.Properties.ofFullCopy(Blocks.SAND).mapColor(MapColor.COLOR_PURPLE) .strength(0.5f).sound(SoundType.SAND))); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final AmethystBlock AMETHYST_TILES = blockItem("amethyst_tiles", new AmethystBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.AMETHYST_BLOCK))); public static final AmethystBlock AMETHYST_BRICKS = blockItem("amethyst_bricks", @@ -279,12 +273,7 @@ private static BlockBehaviour.Properties quenched() { public static final ButtonBlock EDIFIED_BUTTON = blockItem("edified_button", new BlockHexWoodButton(edifiedWoody().noOcclusion().noCollission())); public static final PressurePlateBlock EDIFIED_PRESSURE_PLATE = blockItem("edified_pressure_plate", -<<<<<<< HEAD - new BlockHexPressurePlate( - edifiedWoody().noOcclusion().noCollission())); -======= new BlockHexPressurePlate(edifiedWoody().noOcclusion().noCollission())); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final BlockAkashicLeaves AMETHYST_EDIFIED_LEAVES = blockItem("amethyst_edified_leaves", new BlockAkashicLeaves(leaves(MapColor.COLOR_PURPLE))); public static final BlockAkashicLeaves AVENTURINE_EDIFIED_LEAVES = blockItem("aventurine_edified_leaves", diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java index 58a521e32d..dc5bc430fc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java @@ -21,10 +21,10 @@ public static void registerCreativeTabs(BiConsumer TABS = new LinkedHashMap<>(); - public static final CreativeModeTab HEX = register("hexcasting", CreativeModeTab.builder() + public static final CreativeModeTab HEX = register("hexcasting", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 0) .icon(() -> new ItemStack(HexItems.SPELLBOOK))); - public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder() + public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 0) .icon(() -> new ItemStack(HexItems.SCROLL_LARGE))); private static CreativeModeTab register(String name, CreativeModeTab.Builder tabBuilder) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java index 8abddabecb..86922ba750 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java @@ -77,14 +77,8 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemStaff STAFF_MINDSPLICE = make("staff/mindsplice", new ItemStaff(unstackable())); public static final ItemLens SCRYING_LENS = make("lens", new ItemLens( -<<<<<<< HEAD - IXplatAbstractions.INSTANCE.addEquipSlotFabric(EquipmentSlot.HEAD) - .stacksTo(1).attributes(ItemAttributeModifiers.builder() - .add().build()))); -======= IXplatAbstractions.INSTANCE.addEquipSlotFabric(EquipmentSlot.HEAD) .stacksTo(1))); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final ItemAbacus ABACUS = make("abacus", new ItemAbacus(unstackable())); public static final ItemThoughtKnot THOUGHT_KNOT = make("thought_knot", new ItemThoughtKnot(unstackable())); @@ -97,9 +91,6 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod public static final ItemArtifact ARTIFACT = make("artifact", new ItemArtifact(unstackable().rarity(Rarity.RARE))); public static final ItemJewelerHammer JEWELER_HAMMER = make("jeweler_hammer", -<<<<<<< HEAD - new ItemJewelerHammer(Tiers.IRON, props().stacksTo(1).durability(Tiers.DIAMOND.getUses()))); -======= new ItemJewelerHammer(Tiers.IRON, props() .stacksTo(1) .durability(Tiers.DIAMOND.getUses()) @@ -113,7 +104,6 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod ) ) ); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final ItemScroll SCROLL_SMOL = make("scroll_small", new ItemScroll(props(), 1)); public static final ItemScroll SCROLL_MEDIUM = make("scroll_medium", new ItemScroll(props(), 2)); @@ -167,26 +157,16 @@ public static void registerItemCreativeTab(CreativeModeTab.Output r, CreativeMod // BUFF SANDVICH public static final Item SUBMARINE_SANDWICH = make("sub_sandwich", -<<<<<<< HEAD - new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); -======= new Item(props().food(new FoodProperties.Builder().nutrition(14).saturationModifier(1.2f).build()))); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final ItemLoreFragment LORE_FRAGMENT = make("lore_fragment", new ItemLoreFragment(unstackable() .rarity(Rarity.RARE))); public static final ItemCreativeUnlocker CREATIVE_UNLOCKER = make("creative_unlocker", -<<<<<<< HEAD - new ItemCreativeUnlocker(unstackable() - .rarity(Rarity.EPIC) - .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); -======= new ItemCreativeUnlocker(unstackable() .rarity(Rarity.EPIC) .food(new FoodProperties.Builder().nutrition(20).saturationModifier(1f).alwaysEdible().build()))); ->>>>>>> refs/remotes/slava/devel/port-1.21 // diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index eff2d2c4d7..d9a3f6cf1b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -25,19 +25,11 @@ public static void register(BiConsumer r) { public static final MobEffect ENLARGE_GRID = make("enlarge_grid", new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff)) -<<<<<<< HEAD - .addAttributeModifier(HexAttributes.GRID_ZOOM, modLoc("enlarge_grid"), - 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); - public static final MobEffect SHRINK_GRID = make("shrink_grid", - new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, modLoc("shrink_grid"), -======= .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("enlarge_grid"), 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); public static final MobEffect SHRINK_GRID = make("shrink_grid", new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("shrink_grid"), ->>>>>>> refs/remotes/slava/devel/port-1.21 -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java index cbf0ede6e2..5be55e7b94 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/misc/AkashicTreeGrower.java @@ -3,14 +3,6 @@ import at.petrak.hexcasting.common.lib.HexConfiguredFeatures; import com.google.common.collect.Lists; import net.minecraft.core.BlockPos; -<<<<<<< HEAD -import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceKey; -import net.minecraft.server.level.ServerLevel; -import net.minecraft.server.packs.resources.Resource; -import net.minecraft.util.RandomSource; -import net.minecraft.world.level.block.grower.TreeGrower; -======= import net.minecraft.core.Holder; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceKey; @@ -18,17 +10,14 @@ import net.minecraft.tags.BlockTags; import net.minecraft.util.RandomSource; import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.world.level.chunk.ChunkGenerator; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import java.util.List; -<<<<<<< HEAD -// i gotcha :3 -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 public class AkashicTreeGrower { public static final AkashicTreeGrower INSTANCE = new AkashicTreeGrower(); @@ -40,23 +29,6 @@ public static void init() { GROWERS.add(HexConfiguredFeatures.CITRINE_EDIFIED_TREE); } -<<<<<<< HEAD - protected ResourceKey> getConfiguredFeature(RandomSource pRandom) { - return GROWERS.get(pRandom.nextInt(GROWERS.size())); - } - - public boolean growTree(ServerLevel level, ChunkGenerator generator, BlockPos pos, RandomSource source) { - if (GROWERS.isEmpty()) return false; - - var key = this.getConfiguredFeature(source); - - var registry = level.registryAccess().registryOrThrow(Registries.CONFIGURED_FEATURE); - - var holder = registry.getHolderOrThrow(key); - ConfiguredFeature feature = holder.value(); - - return feature.place(level, generator, source, pos); -======= private ResourceKey> getConfiguredFeature(RandomSource pRandom, boolean pLargeHive) { return GROWERS.get(pRandom.nextInt(GROWERS.size())); } @@ -65,32 +37,15 @@ public boolean growTree(ServerLevel level, ChunkGenerator chunkGenerator, BlockP ResourceKey> treeFeatureKey = getConfiguredFeature(random, hasFlowers(level, pos)); if (treeFeatureKey == null) { return false; - } else { - Holder> holder1 = level.registryAccess() - .registryOrThrow(Registries.CONFIGURED_FEATURE) - .getHolder(treeFeatureKey) - .orElse(null); - var event = net.neoforged.neoforge.event.EventHooks.fireBlockGrowFeature(level, random, pos, holder1); - holder1 = event.getFeature(); - if (event.isCanceled()) return false; - if (holder1 == null) { - return false; - } else { - ConfiguredFeature configuredfeature1 = holder1.value(); - BlockState blockstate1 = level.getFluidState(pos).createLegacyBlock(); - level.setBlock(pos, blockstate1, 4); - if (configuredfeature1.place(level, chunkGenerator, random, pos)) { - if (level.getBlockState(pos) == blockstate1) { - level.sendBlockUpdated(pos, state, blockstate1, 2); - } - - return true; - } else { - level.setBlock(pos, state, 4); - return false; - } - } } + Holder> holder1 = level.registryAccess() + .registryOrThrow(Registries.CONFIGURED_FEATURE) + .getHolder(treeFeatureKey) + .orElse(null); + level.setBlock(pos, Blocks.AIR.defaultBlockState(), Block.UPDATE_ALL); + + ConfiguredFeature configuredFeature = holder1.value(); + return configuredFeature.place(level, level.getChunkSource().getGenerator(), level.random, pos); } private boolean hasFlowers(LevelAccessor level, BlockPos pos) { @@ -101,6 +56,5 @@ private boolean hasFlowers(LevelAccessor level, BlockPos pos) { } return false; ->>>>>>> refs/remotes/slava/devel/port-1.21 } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java index 64c5e5d4d2..29e2f4d431 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java @@ -4,19 +4,10 @@ import at.petrak.paucal.api.PaucalCodecs; import net.minecraft.client.Minecraft; import net.minecraft.core.particles.ParticleTypes; -<<<<<<< HEAD -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.sounds.SoundSource; import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; import net.minecraft.world.phys.Vec3; @@ -24,39 +15,6 @@ public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements CustomPacketPayload { public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("beep")); -<<<<<<< HEAD -public record MsgBeepS2C(Vec3 target, int note, NoteBlockInstrument instrument) implements CustomPacketPayload { - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgBeepS2C::serialize, MsgBeepS2C::deserialize); - - public static final Type ID = new Type<>(modLoc("beep")); - - @Override - public Type type() { - return ID; - } - - private static void encode(FriendlyByteBuf buf, MsgBeepS2C msg) { - msg.serialize(buf); - } - - public static MsgBeepS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var x = buf.readDouble(); - var y = buf.readDouble(); - var z = buf.readDouble(); - var note = buf.readInt(); - var instrument = buf.readEnum(NoteBlockInstrument.class); - return new MsgBeepS2C(new Vec3(x, y, z), note, instrument); - } - - - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.target.x); - buf.writeDouble(this.target.y); - buf.writeDouble(this.target.z); - buf.writeInt(this.note); - buf.writeEnum(instrument); -======= public static final StreamCodec STREAM_CODEC = StreamCodec.composite( PaucalCodecs.VEC3, MsgBeepS2C::target, ByteBufCodecs.VAR_INT, MsgBeepS2C::note, @@ -70,7 +28,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgBeepS2C msg) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java index 9b9210cbfc..a572291628 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java @@ -6,11 +6,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -22,28 +19,6 @@ * Sent server->client to synchronize OpBlink when the target is a player. */ public record MsgBlinkS2C(Vec3 addedPosition) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgBlinkS2C::serialize, MsgBlinkS2C::deserialize); - public static final Type ID = new Type<>(modLoc("blink")); - - @Override - public Type type() { - return ID; - } - - public static MsgBlinkS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var x = buf.readDouble(); - var y = buf.readDouble(); - var z = buf.readDouble(); - return new MsgBlinkS2C(new Vec3(x, y, z)); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.addedPosition.x); - buf.writeDouble(this.addedPosition.y); - buf.writeDouble(this.addedPosition.z); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("blink")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -54,7 +29,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgBlinkS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java index d9990e1523..1b64420ffe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java @@ -8,10 +8,7 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -26,48 +23,6 @@ * Sent server->client to spray particles everywhere. */ public record MsgCastParticleS2C(ParticleSpray spray, FrozenPigment colorizer) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgCastParticleS2C::serialize, MsgCastParticleS2C::deserialize); - public static final Type ID = new Type<>(modLoc("cprtcl")); - - @Override - public Type type() { - return ID; - } - - public static MsgCastParticleS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var posX = buf.readDouble(); - var posY = buf.readDouble(); - var posZ = buf.readDouble(); - var velX = buf.readDouble(); - var velY = buf.readDouble(); - var velZ = buf.readDouble(); - var fuzziness = buf.readDouble(); - var spread = buf.readDouble(); - var count = buf.readInt(); - var tag = buf.readNbt(); - var colorizer = FrozenPigment.fromNBT(tag); - return new MsgCastParticleS2C( - new ParticleSpray(new Vec3(posX, posY, posZ), new Vec3(velX, velY, velZ), fuzziness, spread, count), - colorizer); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.spray.getPos().x); - buf.writeDouble(this.spray.getPos().y); - buf.writeDouble(this.spray.getPos().z); - buf.writeDouble(this.spray.getVel().x); - buf.writeDouble(this.spray.getVel().y); - buf.writeDouble(this.spray.getVel().z); - buf.writeDouble(this.spray.getFuzziness()); - buf.writeDouble(this.spray.getSpread()); - buf.writeInt(this.spray.getCount()); - buf.writeNbt(this.colorizer.serializeToNBT()); - } - - -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("cprtcl")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -81,7 +36,6 @@ public Type type() { return TYPE; } ->>>>>>> refs/remotes/slava/devel/port-1.21 private static final Random RANDOM = new Random(); // https://math.stackexchange.com/questions/44689/how-to-find-a-random-axis-or-unit-vector-in-3d diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java index 3ac1a5138d..ef4d539a6e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java @@ -7,11 +7,8 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.UUIDUtil; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -21,26 +18,6 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgClearSpiralPatternsS2C::serialize, MsgClearSpiralPatternsS2C::deserialize); - public static final CustomPacketPayload.Type ID = new CustomPacketPayload.Type<>(modLoc("clr_spi_pats_sc")); - - @Override - public CustomPacketPayload.Type type() { - return ID; - } - - public static MsgClearSpiralPatternsS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var player = buf.readUUID(); - - return new MsgClearSpiralPatternsS2C(player); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeUUID(playerUUID); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("clr_spi_pats_sc")); public static final StreamCodec STREAM_CODEC = UUIDUtil.STREAM_CODEC.map( @@ -51,7 +28,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgClearSpiralPatternsS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java index cb4f0c0965..06440b01b6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java @@ -7,16 +7,10 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment; import io.netty.buffer.ByteBuf; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; @@ -29,38 +23,6 @@ * Server will send back a {@link MsgNewSpellPatternS2C} packet */ public record MsgNewSpellPatternC2S(InteractionHand handUsed, HexPattern pattern, -<<<<<<< HEAD - List resolvedPatterns) - implements CustomPacketPayload { - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpellPatternC2S::serialize, MsgNewSpellPatternC2S::deserialize); - public static final Type ID = new Type<>(modLoc("pat_cs")); - - @Override - public Type type() { - return ID; - } - - public static MsgNewSpellPatternC2S deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var hand = buf.readEnum(InteractionHand.class); - var pattern = HexPattern.fromNBT(buf.readNbt()); - - var resolvedPatternsLen = buf.readInt(); - var resolvedPatterns = new ArrayList(resolvedPatternsLen); - for (int i = 0; i < resolvedPatternsLen; i++) { - resolvedPatterns.add(ResolvedPattern.fromNBT(buf.readNbt())); - } - return new MsgNewSpellPatternC2S(hand, pattern, resolvedPatterns); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeEnum(handUsed); - buf.writeNbt(this.pattern.serializeToNBT()); - buf.writeInt(this.resolvedPatterns.size()); - for (var pat : this.resolvedPatterns) { - buf.writeNbt(pat.serializeToNBT()); - } -======= List resolvedPatterns) implements CustomPacketPayload { public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("pat_cs")); @@ -77,7 +39,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public void handle(MinecraftServer server, ServerPlayer sender) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java index 4c90c0afab..bb0af803ac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java @@ -10,11 +10,8 @@ import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -28,38 +25,6 @@ * Sent server->client when the player finishes casting a spell. */ public record MsgNewSpellPatternS2C(ExecutionClientView info, int index) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpellPatternS2C::serialize, MsgNewSpellPatternS2C::deserialize); - public static final Type ID = new Type<>(modLoc("pat_sc")); - - @Override - public Type type() { - return ID; - } - - public static MsgNewSpellPatternS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var isStackEmpty = buf.readBoolean(); - var resolutionType = buf.readEnum(ResolvedPatternType.class); - var index = buf.readInt(); - - var stack = buf.readList(bu -> bu.readNbt()); - var raven = buf.readOptional(bu -> bu.readNbt()).orElse(null); - - return new MsgNewSpellPatternS2C( - new ExecutionClientView(isStackEmpty, resolutionType, stack, raven), index - ); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeBoolean(this.info.isStackClear()); - buf.writeEnum(this.info.getResolutionType()); - buf.writeInt(this.index); - - buf.writeCollection(this.info.getStackDescs(), (b, t) -> b.writeNbt(t)); - buf.writeOptional(Optional.ofNullable(this.info.getRavenmind()), (b, t) -> b.writeNbt(t)); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("pat_sc")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -71,7 +36,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgNewSpellPatternS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java index 99fb9c6449..9b1a844353 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java @@ -7,11 +7,8 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.UUIDUtil; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -23,31 +20,6 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewSpiralPatternsS2C::serialize, MsgNewSpiralPatternsS2C::deserialize); - public static final Type ID = new Type<>(modLoc("spi_pats_sc")); - - @Override - public Type type() { - return ID; - } - - public static MsgNewSpiralPatternsS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var player = buf.readUUID(); - var patterns = buf.readCollection(ArrayList::new, buff -> HexPattern.fromNBT(buf.readNbt())); - var lifetime = buf.readInt(); - - - return new MsgNewSpiralPatternsS2C(player, patterns, lifetime); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeUUID(playerUUID); - buf.writeCollection(patterns, (buff, pattern) -> buff.writeNbt(pattern.serializeToNBT())); - buf.writeInt(lifetime); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("spi_pats_sc")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -60,7 +32,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgNewSpiralPatternsS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java index 77b3173492..d7d367315a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java @@ -23,45 +23,6 @@ // https://github.com/VazkiiMods/Botania/blob/1.18.x/Xplat/src/main/java/vazkii/botania/network/clientbound/PacketSpawnDoppleganger.java public record MsgNewWallScrollS2C(ClientboundAddEntityPacket inner, BlockPos pos, Direction dir, ItemStack scrollItem, boolean showsStrokeOrder, int blockSize) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgNewWallScrollS2C::serialize, MsgNewWallScrollS2C::deserialize); - public static final Type ID = new Type<>(modLoc("wallscr")); - - @Override - public Type type() { - return ID; - } - - public void serialize(RegistryFriendlyByteBuf buf) { - buf.writeVarInt(inner.getId()); - buf.writeUUID(inner.getUUID()); - ByteBufCodecs.registry(Registries.ENTITY_TYPE).encode(buf, inner.getType()); - buf.writeDouble(inner.getX()); - buf.writeDouble(inner.getY()); - buf.writeDouble(inner.getZ()); - buf.writeByte((byte) inner.getXRot()); - buf.writeByte((byte) inner.getYRot()); - buf.writeByte((byte) inner.getYHeadRot()); - buf.writeVarInt(inner.getData()); - buf.writeShort((short) inner.getXa()); - buf.writeShort((short) inner.getYa()); - buf.writeShort((short) inner.getZa()); - buf.writeBlockPos(pos); - buf.writeByte(dir.ordinal()); - ItemStack.STREAM_CODEC.encode(buf, scrollItem); - buf.writeBoolean(showsStrokeOrder); - buf.writeVarInt(blockSize); - } - - public static MsgNewWallScrollS2C deserialize(RegistryFriendlyByteBuf buf) { - var inner = ClientboundAddEntityPacket.STREAM_CODEC.decode(buf); - var pos = buf.readBlockPos(); - var dir = HexUtils.getSafe(Direction.values(), buf.readByte()); - var scroll = ItemStack.STREAM_CODEC.decode(buf); - var strokeOrder = buf.readBoolean(); - var blockSize = buf.readVarInt(); - return new MsgNewWallScrollS2C(inner, pos, dir, scroll, strokeOrder, blockSize); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("wallscr")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -77,7 +38,6 @@ public static MsgNewWallScrollS2C deserialize(RegistryFriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgNewWallScrollS2C self) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index e1a981e401..f50ed7d26d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -10,11 +10,8 @@ import net.minecraft.client.Minecraft; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -37,40 +34,6 @@ public record MsgOpenSpellGuiS2C(InteractionHand hand, List pat int parenCount ) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgOpenSpellGuiS2C::serialize, MsgOpenSpellGuiS2C::deserialize); - public static final Type ID = new Type<>(modLoc("cgui")); - - @Override - public Type type() { - return ID; - } - - public static MsgOpenSpellGuiS2C deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var hand = buf.readEnum(InteractionHand.class); - - var patterns = buf.readList(fbb -> ResolvedPattern.fromNBT(fbb.readNbt())); - - var stack = buf.readList(b -> b.readNbt()); - var raven = buf.readNbt(); - - var parenCount = buf.readVarInt(); - - return new MsgOpenSpellGuiS2C(hand, patterns, stack, raven, parenCount); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeEnum(this.hand); - - buf.writeCollection(this.patterns, (fbb, pat) -> fbb.writeNbt(pat.serializeToNBT())); - - buf.writeCollection(this.stack, (b, t) -> b.writeNbt(t)); - buf.writeNbt(this.ravenmind); - - buf.writeVarInt(this.parenCount); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("cgui")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -91,7 +54,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgOpenSpellGuiS2C msg) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java index ff85baa895..44ee8f9b21 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java @@ -7,16 +7,11 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; @@ -26,12 +21,7 @@ * Sent S->C to have a wall scroll recalculate its pattern, to get readability offset. */ public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrder) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgRecalcWallScrollDisplayS2C::serialize, MsgRecalcWallScrollDisplayS2C::deserialize); - public static final Type ID = new Type<>(modLoc("redoscroll")); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("redoscroll")); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final StreamCodec STREAM_CODEC = StreamCodec.composite( ByteBufCodecs.VAR_INT, MsgRecalcWallScrollDisplayS2C::entityId, @@ -39,20 +29,9 @@ public record MsgRecalcWallScrollDisplayS2C(int entityId, boolean showStrokeOrde MsgRecalcWallScrollDisplayS2C::new ); -<<<<<<< HEAD - public void serialize(FriendlyByteBuf buf) { - buf.writeVarInt(entityId); - buf.writeBoolean(showStrokeOrder); - } - - @Override - public Type type() { - return ID; -======= @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static void handle(MsgRecalcWallScrollDisplayS2C msg) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java index 45e2479464..a8fc568f3c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java @@ -12,21 +12,12 @@ import at.petrak.hexcasting.common.lib.HexSounds; import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; -<<<<<<< HEAD -import net.minecraft.core.component.DataComponentType; import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; -======= -import net.minecraft.core.component.DataComponents; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; -<<<<<<< HEAD -======= import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; @@ -47,32 +38,6 @@ */ public record MsgShiftScrollC2S(double mainHandDelta, double offHandDelta, boolean isCtrl, boolean invertSpellbook, boolean invertAbacus) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgShiftScrollC2S::serialize, MsgShiftScrollC2S::deserialize); - public static final Type ID = new Type<>(modLoc("scroll")); - - @Override - public Type type() { - return ID; - } - - public static MsgShiftScrollC2S deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - var mainHandDelta = buf.readDouble(); - var offHandDelta = buf.readDouble(); - var isCtrl = buf.readBoolean(); - var invertSpellbook = buf.readBoolean(); - var invertAbacus = buf.readBoolean(); - return new MsgShiftScrollC2S(mainHandDelta, offHandDelta, isCtrl, invertSpellbook, invertAbacus); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeDouble(this.mainHandDelta); - buf.writeDouble(this.offHandDelta); - buf.writeBoolean(this.isCtrl); - buf.writeBoolean(this.invertSpellbook); - buf.writeBoolean(this.invertAbacus); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("scroll")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -87,7 +52,6 @@ public void serialize(FriendlyByteBuf buf) { @Override public Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public void handle(MinecraftServer server, ServerPlayer sender) { @@ -126,22 +90,14 @@ private void spellbook(ServerPlayer sender, InteractionHand hand, ItemStack stac component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name.sealed", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), -<<<<<<< HEAD - Component.literal("").withStyle(stack.getRarity().color(), ChatFormatting.ITALIC) -======= - Component.literal("").withStyle(stack.getRarity().getStyleModifier()).withStyle(ChatFormatting.ITALIC) ->>>>>>> refs/remotes/slava/devel/port-1.21 + Component.literal("").withStyle(stack.getRarity().color()).withStyle(ChatFormatting.ITALIC) .append(stack.getHoverName()), Component.translatable("hexcasting.tooltip.spellbook.sealed").withStyle(ChatFormatting.GOLD)); } else { component = Component.translatable("hexcasting.tooltip.spellbook.page_with_name", Component.literal(String.valueOf(newIdx)).withStyle(ChatFormatting.WHITE), Component.literal(String.valueOf(len)).withStyle(ChatFormatting.WHITE), -<<<<<<< HEAD - Component.literal("").withStyle(stack.getRarity().color(), ChatFormatting.ITALIC) -======= - Component.literal("").withStyle(stack.getRarity().getStyleModifier()).withStyle(ChatFormatting.ITALIC) ->>>>>>> refs/remotes/slava/devel/port-1.21 + Component.literal("").withStyle(stack.getRarity().color()).withStyle(ChatFormatting.ITALIC) .append(stack.getHoverName())); } @@ -167,13 +123,9 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, } var increase = delta < 0; -<<<<<<< HEAD - double num = stack.get(DataComponents.CUSTOM_DATA).copyTag().getDouble(ItemAbacus.TAG_VALUE); -======= Double num = stack.get(HexDataComponents.ABACUS_VALUE); if(num == null) num = 0.0; ->>>>>>> refs/remotes/slava/devel/port-1.21 double shiftDelta; float pitch; @@ -188,14 +140,7 @@ private void abacus(ServerPlayer sender, InteractionHand hand, ItemStack stack, int scale = Math.max((int) Math.floor(Math.abs(delta)), 1); num += scale * shiftDelta * (increase ? 1 : -1); -<<<<<<< HEAD - CustomData data = stack.getOrDefault(DataComponents.CUSTOM_DATA, CustomData.EMPTY); - CompoundTag tag = data.copyTag(); - tag.putDouble(ItemAbacus.TAG_VALUE, num); - stack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); -======= stack.set(HexDataComponents.ABACUS_VALUE, num); ->>>>>>> refs/remotes/slava/devel/port-1.21 pitch *= (increase ? 1.05f : 0.95f); pitch += (Math.random() - 0.5) * 0.1; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index 7f72dccf77..676539fc43 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,19 +1,5 @@ package at.petrak.hexcasting.common.recipe; -<<<<<<< HEAD -import at.petrak.hexcasting.common.misc.ContainerInput; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; -import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; -import com.google.gson.JsonObject; -import com.mojang.serialization.MapCodec; -import net.minecraft.core.HolderLookup; -import net.minecraft.core.RegistryAccess; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; -======= import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; @@ -25,7 +11,6 @@ import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.Entity; import net.minecraft.world.item.ItemStack; @@ -45,11 +30,7 @@ public record BrainsweepRecipe( BrainsweepeeIngredient entityIn, long mediaCost, BlockState result -<<<<<<< HEAD -) implements Recipe { -======= ) implements Recipe { ->>>>>>> refs/remotes/slava/devel/port-1.21 public boolean matches(BlockState blockIn, Entity victim, ServerLevel level) { return this.blockIn.test(blockIn) && this.entityIn.test(victim, level); } @@ -66,13 +47,6 @@ public RecipeSerializer getSerializer() { // in order to get this to be a "Recipe" we need to do a lot of bending-over-backwards // to get the implementation to be satisfied even though we never use it -<<<<<<< HEAD - - @Override - public boolean matches(ContainerInput recipeInput, Level level) { - return false; - } -======= @Override public boolean matches(RecipeInput input, Level level) { return false; @@ -82,30 +56,14 @@ public boolean matches(RecipeInput input, Level level) { public ItemStack assemble(RecipeInput input, HolderLookup.Provider registries) { return ItemStack.EMPTY; } ->>>>>>> refs/remotes/slava/devel/port-1.21 - - @Override - public ItemStack assemble(ContainerInput recipeInput, HolderLookup.Provider provider) { - return null; - } @Override public boolean canCraftInDimensions(int pWidth, int pHeight) { return false; } -<<<<<<< HEAD - @Override - public ItemStack getResultItem(HolderLookup.Provider provider) { - return null; - } - - @Override - public ItemStack getResultItem(RegistryAccess registryAccess) { -======= @Override public ItemStack getResultItem(HolderLookup.Provider registries) { ->>>>>>> refs/remotes/slava/devel/port-1.21 return ItemStack.EMPTY.copy(); } @@ -149,15 +107,5 @@ public static class Serializer extends RecipeSerializerBase { public @NotNull StreamCodec streamCodec() { return STREAM_CODEC; } - - @Override - public MapCodec codec() { - return null; - } - - @Override - public StreamCodec streamCodec() { - return null; - } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java index 55c0f8ed84..0da1e86001 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java @@ -41,11 +41,7 @@ public boolean matches(CraftingInput container, Level level) { boolean foundComb = false; boolean foundSealee = false; -<<<<<<< HEAD - for (int i = 0; i < container.ingredientCount(); i++) { -======= for (int i = 0; i < container.size(); i++) { ->>>>>>> refs/remotes/slava/devel/port-1.21 var stack = container.getItem(i); if (this.sealee.isCorrectSealee(stack)) { if (foundSealee) return false; @@ -60,17 +56,10 @@ public boolean matches(CraftingInput container, Level level) { } @Override -<<<<<<< HEAD - public ItemStack assemble(CraftingInput inv, HolderLookup.Provider provider) { - ItemStack sealee = ItemStack.EMPTY; - - for (int i = 0; i < inv.ingredientCount(); i++) { -======= public @NotNull ItemStack assemble(CraftingInput inv, HolderLookup.RegistryLookup.@NotNull Provider registryProvider) { ItemStack sealee = ItemStack.EMPTY; for (int i = 0; i < inv.size(); i++) { ->>>>>>> refs/remotes/slava/devel/port-1.21 var stack = inv.getItem(i); if (this.sealee.isCorrectSealee(stack)) { sealee = stack.copy(); diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java index 24c86bf083..8be99bddf5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java @@ -22,19 +22,14 @@ public class HexAdvancements extends PaucalAdvancementSubProvider { public static final OvercastTrigger.Instance ENLIGHTEN = -<<<<<<< HEAD - new OvercastTrigger.Instance(MinMaxBounds.Ints.ANY, -======= new OvercastTrigger.Instance(Optional.empty(), MinMaxBounds.Ints.ANY, ->>>>>>> refs/remotes/slava/devel/port-1.21 // add a little bit of slop here. use 80% or more health ... MinMaxBounds.Doubles.atLeast(0.8), // and be left with under 1 healthpoint (half a heart) // TODO this means if 80% of your health is less than half a heart, so if you have 2.5 hearts or // less, you can't become enlightened. - MinMaxBounds.Doubles.between(Double.MIN_NORMAL, 1.0), - Optional.empty() + MinMaxBounds.Doubles.between(Double.MIN_NORMAL, 1.0) ); public HexAdvancements() { diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java index dc1e2f4d9c..ae8fa463d5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java @@ -21,7 +21,7 @@ public class HexBlockTagProvider extends TagsProvider { public final IXplatTags xtags; public HexBlockTagProvider(PackOutput output, CompletableFuture lookupProvider, IXplatTags xtags) { - super(output, Registries.BLOCK, lookupProvider, HexAPI.MOD_ID, null); + super(output, Registries.BLOCK, lookupProvider); this.xtags = xtags; } diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java index 2a55206672..dfc4488854 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java @@ -23,7 +23,7 @@ public class HexItemTagProvider extends ItemTagsProvider { private final IXplatTags xtags; public HexItemTagProvider(PackOutput output, CompletableFuture lookup, CompletableFuture> pBlockTagsProvider, IXplatTags xtags) { - super(output, lookup, pBlockTagsProvider, HexAPI.MOD_ID, null); + super(output, lookup, pBlockTagsProvider); this.xtags = xtags; } diff --git a/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java b/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java index 569e74d8d8..8a8ab9eb7b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java +++ b/Common/src/main/java/at/petrak/hexcasting/server/ScrungledPatternsSave.java @@ -12,6 +12,7 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.datafix.DataFixTypes; import net.minecraft.world.level.saveddata.SavedData; import org.jetbrains.annotations.Nullable; @@ -119,7 +120,8 @@ public static ScrungledPatternsSave open(ServerLevel overworld) { return overworld.getDataStorage().computeIfAbsent( new SavedData.Factory<>( () -> ScrungledPatternsSave.createFromScratch(overworld.getSeed()), - ScrungledPatternsSave::load + ScrungledPatternsSave::load, + DataFixTypes.PLAYER ), TAG_SAVED_DATA); } diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 30dac58874..ac097a5095 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -19,21 +19,13 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -<<<<<<< HEAD -import at.petrak.hexcasting.common.components.PigmentItemComponent; -======= import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; import net.minecraft.core.Registry; import net.minecraft.network.protocol.Packet; -<<<<<<< HEAD -import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.resources.ResourceKey; @@ -83,11 +75,7 @@ public interface IXplatAbstractions { void sendPacketTracking(Entity entity, CustomPacketPayload packet); // https://github.com/VazkiiMods/Botania/blob/13b7bcd9cbb6b1a418b0afe455662d29b46f1a7f/Xplat/src/main/java/vazkii/botania/xplat/IXplatAbstractions.java#L157 -<<<<<<< HEAD - ClientboundCustomPayloadPacket toVanillaClientboundPacket(CustomPacketPayload message); -======= Packet toVanillaClientboundPacket(CustomPacketPayload message); ->>>>>>> refs/remotes/slava/devel/port-1.21 // double getReachDistance(Player player); @@ -139,11 +127,11 @@ public interface IXplatAbstractions { @Nullable ADHexHolder findHexHolder(ItemStack stack); + ADVariantItem findVariantHolder(ItemStack stack); + // coooollooorrrs - default boolean isPigment(ItemStack stack) { - return stack.has(PigmentItemComponent.COMPONENT_TYPE); - }; + boolean isPigment(ItemStack stack); ColorProvider getColorProvider(FrozenPigment pigment); diff --git a/Common/src/main/resources/hexplat.accesswidener b/Common/src/main/resources/hexplat.accesswidener index 791e6c7df9..613c5818a0 100644 --- a/Common/src/main/resources/hexplat.accesswidener +++ b/Common/src/main/resources/hexplat.accesswidener @@ -1,18 +1,4 @@ accessWidener v1 named -<<<<<<< HEAD -accessible class net/minecraft/client/renderer/RenderType$CompositeRenderType -accessible class net/minecraft/client/renderer/RenderType$CompositeState -accessible field net/minecraft/client/renderer/RenderType$CompositeState textureState Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; -accessible class net/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard -accessible class net/minecraft/world/item/crafting/Ingredient$Value -accessible method net/minecraft/world/item/crafting/Ingredient (Ljava/util/stream/Stream;)V -accessible method net/minecraft/world/item/context/UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V -accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; -accessible class net/minecraft/network/protocol/game/ClientboundAddEntityPacket -accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V -accessible method net/minecraft/network/protocol/game/ClientboundAddEntityPacket write (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V -accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; -======= accessible class net/minecraft/client/renderer/RenderType$CompositeRenderType accessible class net/minecraft/client/renderer/RenderType$CompositeState accessible field net/minecraft/client/renderer/RenderType$CompositeState textureState Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; @@ -22,4 +8,3 @@ accessible method net/minecraft/world/item/crafting/Ingredient (Ljava/uti #accessible method net/minecraft/world/item/context/UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V #accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; #accessible method net/minecraft/world/damagesource/DamageSources source (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; ->>>>>>> refs/remotes/slava/devel/port-1.21 diff --git a/Fabric/build.gradle b/Fabric/build.gradle index e388b24769..efa2d2a64b 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -74,13 +74,23 @@ configurations { repositories { mavenCentral() + mavenLocal() + + // serialization hooks + maven { url = "https://maven.hexxy.media" } // paucal and patchi maven { url = 'https://maven.blamejared.com' } // modmenu and clothconfig maven { url "https://maven.shedaniel.me/" } // Cardinal Components - maven { url 'https://maven.ladysnake.org/releases' } + maven { + url = "https://jitpack.io" + content { + includeGroupAndSubgroups 'com.github' + } + } + maven { url = "https://maven.ladysnake.org/releases" } maven { url "https://mvn.devos.one/snapshots/" } // EMI maven { url = "https://maven.terraformersmc.com/releases/" } @@ -123,9 +133,9 @@ dependencies { modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-block:$cardinalComponentsVersion" // apparently the 1.18 version Just Works on 1.19 - modImplementation "${modID}:serialization-hooks:$serializationHooksVersion" - include "${modID}:serialization-hooks:$serializationHooksVersion" - implementation(include("com.github.LlamaLad7:MixinExtras:0.1.1")) + modImplementation "io.github.tropheusj:serialization-hooks:$serializationHooksVersion" + include "io.github.tropheusj:serialization-hooks:$serializationHooksVersion" + include(implementation(annotationProcessor("io.github.llamalad7:mixinextras-fabric:0.5.0"))) // === OPTIONAL DEPS === diff --git a/Fabric/gradle.properties b/Fabric/gradle.properties index 4ac5376982..537818eaf2 100644 --- a/Fabric/gradle.properties +++ b/Fabric/gradle.properties @@ -5,7 +5,7 @@ fabricLanguageKotlinVersion=1.12.3+kotlin.2.0.21 loom.platform=fabric # These are all included -cardinalComponentsVersion=6.1.1 +cardinalComponentsVersion=6.1.3 serializationHooksVersion=0.4.99999 #entityReachVersion=2.3.0 diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexClientInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexClientInitializer.kt index 2ad2ec1d4a..0d24725fd0 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexClientInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexClientInitializer.kt @@ -13,7 +13,7 @@ import at.petrak.hexcasting.fabric.network.FabricPacketHandler import at.petrak.hexcasting.interop.HexInterop import net.fabricmc.api.ClientModInitializer import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents -import net.fabricmc.fabric.api.client.model.ModelLoadingRegistry +import net.fabricmc.fabric.api.client.model.loading.v1.ModelLoadingPlugin import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents import net.fabricmc.fabric.api.client.particle.v1.ParticleFactoryRegistry import net.fabricmc.fabric.api.client.rendering.v1.* @@ -31,10 +31,10 @@ object FabricHexClientInitializer : ClientModInitializer { FabricPacketHandler.initClient() WorldRenderEvents.AFTER_TRANSLUCENT.register { ctx -> - HexAdditionalRenderers.overlayLevel(ctx.matrixStack(), ctx.tickDelta()) + HexAdditionalRenderers.overlayLevel(ctx.matrixStack(), ctx.tickCounter().gameTimeDeltaTicks) } HudRenderCallback.EVENT.register(HexAdditionalRenderers::overlayGui) - WorldRenderEvents.START.register { ClientTickCounter.renderTickStart(it.tickDelta()) } + WorldRenderEvents.START.register { ClientTickCounter.renderTickStart(it.tickCounter().gameTimeDeltaTicks) } ClientTickEvents.END_CLIENT_TICK.register { ClientTickCounter.clientTickEnd() ShiftScrollListener.clientTickEnd() @@ -71,6 +71,10 @@ object FabricHexClientInitializer : ClientModInitializer { RegisterClientStuff.registerColorProviders( { colorizer, item -> ColorProviderRegistry.ITEM.register(colorizer, item) }, { colorizer, block -> ColorProviderRegistry.BLOCK.register(colorizer, block) }) - ModelLoadingRegistry.INSTANCE.registerModelProvider(RegisterClientStuff::onModelRegister) + ModelLoadingPlugin.register { + context -> RegisterClientStuff.onModelRegister { + id -> context.addModels(id) + } + } } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java index a0ff01d315..f7e8137b9b 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java @@ -234,7 +234,7 @@ public void validatePostLoad() throws ValidationException { try { for (var auugh : this.scrollInjectionsRaw) { String[] split = auugh.split(" "); - ResourceLocation loc = new ResourceLocation(split[0]); + ResourceLocation loc = ResourceLocation.parse(split[0]); int count = Integer.parseInt(split[1]); this.scrollInjections.put(loc, count); } @@ -246,7 +246,7 @@ public void validatePostLoad() throws ValidationException { this.loreInjections = new ArrayList<>(); try { for (var table : this.loreInjectionsRaw) { - ResourceLocation loc = new ResourceLocation(table); + ResourceLocation loc = ResourceLocation.parse(table); this.loreInjections.add(loc); } } catch (Exception e) { @@ -258,7 +258,7 @@ public void validatePostLoad() throws ValidationException { this.cypherInjections = new ArrayList<>(); try { for (var table : this.cypherInjectionsRaw) { - ResourceLocation loc = new ResourceLocation(table); + ResourceLocation loc = ResourceLocation.parse(table); this.cypherInjections.add(loc); } } catch (Exception e) { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 19e676136c..a5d5735620 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -1,7 +1,11 @@ package at.petrak.hexcasting.fabric import at.petrak.hexcasting.api.HexAPI.modLoc +import at.petrak.hexcasting.api.addldata.ADMediaHolder import at.petrak.hexcasting.api.advancements.HexAdvancementTriggers +import at.petrak.hexcasting.api.casting.iota.DoubleIota +import at.petrak.hexcasting.api.misc.MediaConstants +import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.api.mod.HexStatistics import at.petrak.hexcasting.common.blocks.behavior.HexComposting import at.petrak.hexcasting.common.blocks.behavior.HexStrippables @@ -18,10 +22,11 @@ import at.petrak.hexcasting.common.misc.BrainsweepingEvents import at.petrak.hexcasting.common.misc.PlayerPositionRecorder import at.petrak.hexcasting.common.misc.RegisterMisc import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry +import at.petrak.hexcasting.fabric.cc.HexCardinalComponents +import at.petrak.hexcasting.fabric.cc.adimpl.CCMediaHolder import at.petrak.hexcasting.fabric.event.VillagerConversionCallback import at.petrak.hexcasting.fabric.loot.FabricHexLootModJankery import at.petrak.hexcasting.fabric.network.FabricPacketHandler -import at.petrak.hexcasting.fabric.recipe.FabricModConditionalIngredient import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions @@ -34,8 +39,9 @@ import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents import net.fabricmc.fabric.api.event.player.AttackBlockCallback import net.fabricmc.fabric.api.event.player.UseEntityCallback +import net.fabricmc.fabric.api.item.v1.DefaultItemComponentEvents import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents -import net.fabricmc.fabric.api.loot.v2.LootTableEvents +import net.fabricmc.fabric.api.loot.v3.LootTableEvents import net.fabricmc.fabric.api.registry.FlammableBlockRegistry import net.minecraft.commands.synchronization.SingletonArgumentInfo import net.minecraft.core.Registry @@ -43,6 +49,7 @@ import net.minecraft.core.registries.BuiltInRegistries import net.minecraft.resources.ResourceLocation import net.minecraft.world.InteractionResult import net.minecraft.world.entity.player.Player +import net.minecraft.world.item.Items import net.minecraft.world.level.block.state.properties.BlockSetType import java.util.function.BiConsumer @@ -62,7 +69,7 @@ object FabricHexInitializer : ModInitializer { PatternResLocArgument::class.java, SingletonArgumentInfo.contextFree { PatternResLocArgument.id() } ) - HexAdvancementTriggers.registerTriggers() + HexAdvancementTriggers.registerTriggers(bind(BuiltInRegistries.TRIGGER_TYPES)) HexComposting.setup() HexStrippables.init() FabricImpetusStorage.registerStorage() @@ -95,8 +102,8 @@ object FabricHexInitializer : ModInitializer { CommandRegistrationCallback.EVENT.register { dp, _, _ -> HexCommands.register(dp) } - LootTableEvents.MODIFY.register { _, _, id, supplier, _ -> - FabricHexLootModJankery.lootLoad(id, supplier::withPool) + LootTableEvents.MODIFY.register { key, builder, _, _ -> + FabricHexLootModJankery.lootLoad(key, builder::withPool) } EntityElytraEvents.CUSTOM.register { target, _ -> @@ -126,12 +133,12 @@ object FabricHexInitializer : ModInitializer { HexBlocks.registerBlockItems(bind(BuiltInRegistries.ITEM)) HexBlockEntities.registerTiles(bind(BuiltInRegistries.BLOCK_ENTITY_TYPE)) HexItems.registerItems(bind(BuiltInRegistries.ITEM)) - Registry.register(IngredientDeserializer.REGISTRY, FabricModConditionalIngredient.ID, FabricModConditionalIngredient.Deserializer.INSTANCE) + // Registry.register(IngredientDeserializer.REGISTRY, FabricModConditionalIngredient.ID, FabricModConditionalIngredient.Deserializer.INSTANCE) HexEntities.registerEntities(bind(BuiltInRegistries.ENTITY_TYPE)) - HexAttributes.register(bind(BuiltInRegistries.ATTRIBUTE)) + HexAttributes.register() HexMobEffects.register(bind(BuiltInRegistries.MOB_EFFECT)) - HexPotions.register(bind(BuiltInRegistries.POTION)) + HexPotions.registerPotions(bind(BuiltInRegistries.POTION)) HexRecipeStuffRegistry.registerSerializers(bind(BuiltInRegistries.RECIPE_SERIALIZER)) HexRecipeStuffRegistry.registerTypes(bind(BuiltInRegistries.RECIPE_TYPE)) @@ -160,12 +167,31 @@ object FabricHexInitializer : ModInitializer { // sorry lex (not sorry) private fun fabricOnlyRegistration() { -// if (GravityApiInterop.isActive()) { -// HexActions.make("interop/gravity/get", -// ActionRegistryEntry(HexPattern.fromAngles("wawawddew", HexDir.NORTH_EAST), OpGetGravity)) -// HexActions.make("interop/gravity/set", -// ActionRegistryEntry(HexPattern.fromAngles("wdwdwaaqw", HexDir.NORTH_WEST), OpChangeGravity)) -// } + DefaultItemComponentEvents.MODIFY.register { + it.modify(Items.PUMPKIN_PIE, { + it.set(HexDataComponents.IOTA, DoubleIota(Math.PI)) + }) + } + + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCMediaHolder.Static({ HexConfig.common().dustMediaAmount() }, ADMediaHolder.AMETHYST_DUST_PRIORITY, stack) + }, HexItems.AMETHYST_DUST) + + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCMediaHolder.Static({ HexConfig.common().shardMediaAmount() }, ADMediaHolder.AMETHYST_SHARD_PRIORITY, stack) + }, Items.AMETHYST_SHARD) + + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCMediaHolder.Static({ HexConfig.common().chargedCrystalMediaAmount() }, ADMediaHolder.CHARGED_AMETHYST_PRIORITY, stack) + }, HexItems.CHARGED_AMETHYST) + + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCMediaHolder.Static({ MediaConstants.QUENCHED_SHARD_UNIT }, ADMediaHolder.QUENCHED_SHARD_PRIORITY, stack) + }, HexItems.QUENCHED_SHARD) + + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCMediaHolder.Static({ MediaConstants.QUENCHED_BLOCK_UNIT }, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, stack) + }, HexBlocks.QUENCHED_ALLAY.asItem()) } private fun butYouCouldBeFire() { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java index 70919c6fc3..23ed124124 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java @@ -35,11 +35,11 @@ public FrozenPigment setPigment(@Nullable FrozenPigment pigment) { @Override public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { - this.pigment = FrozenPigment.fromNBT(tag.getCompound(TAG_PIGMENT)); + } @Override public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { - tag.put(TAG_PIGMENT, this.pigment.serializeToNBT()); + } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java index de46b5e2e8..34097cf2aa 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.NbtOps; import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; @@ -40,7 +41,7 @@ public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { List patterns = new ArrayList<>(patternsTag.size()); for (int i = 0; i < patternsTag.size(); i++) { - patterns.add(ResolvedPattern.fromNBT(patternsTag.getCompound(i))); + patterns.add(ResolvedPattern.CODEC.parse(NbtOps.INSTANCE, patternsTag.getCompound(i)).getOrThrow()); } this.patterns = patterns; } @@ -49,7 +50,7 @@ public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { var listTag = new ListTag(); for (ResolvedPattern pattern : patterns) { - listTag.add(pattern.serializeToNBT()); + listTag.add(ResolvedPattern.CODEC.encode(pattern, NbtOps.INSTANCE, new CompoundTag()).getOrThrow()); } tag.put(TAG_PATTERNS, listTag); } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java index 4944fe79f7..5fd49a0bdf 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.casting.eval.vm.CastingImage; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.NbtOps; import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerPlayer; @@ -26,7 +27,7 @@ public CCStaffcastImage(ServerPlayer owner) { public CastingVM getVM(InteractionHand hand) { var img = this.lazyLoadedTag.isEmpty() ? new CastingImage() - : CastingImage.loadFromNbt(this.lazyLoadedTag, this.owner.serverLevel()); + : CastingImage.getCODEC().parse(NbtOps.INSTANCE, lazyLoadedTag).getOrThrow(); var env = new StaffCastEnv(this.owner, hand); return new CastingVM(img, env); } @@ -35,26 +36,16 @@ public void setImage(@Nullable CastingImage image) { this.lazyLoadedTag = image == null ? new CompoundTag() - : image.serializeToNbt(); + : (CompoundTag) CastingImage.getCODEC().encode(image, NbtOps.INSTANCE, new CompoundTag()).getOrThrow(); } @Override -<<<<<<< HEAD - public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { - this.lazyLoadedTag = tag.getCompound(TAG_HARNESS); - } - - @Override - public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { - tag.put(TAG_HARNESS, this.lazyLoadedTag); -======= - public void readFromNbt(CompoundTag tag) { + public void readFromNbt(CompoundTag tag, HolderLookup.Provider provider) { this.lazyLoadedTag = tag.getCompound(TAG_VM); } @Override - public void writeToNbt(CompoundTag tag) { + public void writeToNbt(CompoundTag tag, HolderLookup.Provider provider) { tag.put(TAG_VM, this.lazyLoadedTag); ->>>>>>> refs/remotes/slava/devel/port-1.21 } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java index 3a7a3ca8a9..89489990ab 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java @@ -1,30 +1,23 @@ package at.petrak.hexcasting.fabric.cc; -import at.petrak.hexcasting.api.addldata.ADMediaHolder; -import at.petrak.hexcasting.api.addldata.ItemDelegatingEntityIotaHolder; -import at.petrak.hexcasting.api.casting.iota.DoubleIota; +import at.petrak.hexcasting.api.addldata.*; import at.petrak.hexcasting.api.item.*; -import at.petrak.hexcasting.api.misc.MediaConstants; -import at.petrak.hexcasting.api.mod.HexConfig; -import at.petrak.hexcasting.common.components.*; import at.petrak.hexcasting.common.entities.EntityWallScroll; -import at.petrak.hexcasting.common.lib.HexBlocks; -import at.petrak.hexcasting.common.lib.HexItems; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.fabric.cc.adimpl.*; +import net.fabricmc.fabric.api.lookup.v1.item.ItemApiLookup; import org.ladysnake.cca.api.v3.component.ComponentFactory; import org.ladysnake.cca.api.v3.component.ComponentKey; import org.ladysnake.cca.api.v3.component.ComponentRegistry; import org.ladysnake.cca.api.v3.entity.EntityComponentFactoryRegistry; import org.ladysnake.cca.api.v3.entity.EntityComponentInitializer; import org.ladysnake.cca.api.v3.entity.RespawnCopyStrategy; -import org.ladysnake.cca.api.v3.item.ItemComponentFactoryRegistry; import org.ladysnake.cca.api.v3.item.ItemComponentInitializer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.decoration.ItemFrame; import net.minecraft.world.entity.item.ItemEntity; -import net.minecraft.world.item.Items; import org.ladysnake.cca.api.v3.item.ItemComponentMigrationRegistry; import java.util.function.Function; @@ -65,6 +58,16 @@ public class HexCardinalComponents implements EntityComponentInitializer, ItemCo public static final ComponentKey VARIANT_ITEM = ComponentRegistry.getOrCreate(modLoc("variant_item"), CCVariantItem.class); + public static final ItemApiLookup MEDIA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("media_holder"), ADMediaHolder.class, Void.class); + + public static final ItemApiLookup IOTA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("iota_holder"), ADIotaHolder.class, Void.class); + + public static final ItemApiLookup PIGMENT_ITEM_LOOKUP = ItemApiLookup.get(modLoc("pigment_item"), ADPigment.class, Void.class); + + public static final ItemApiLookup HEX_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("hex_holder"), ADHexHolder.class, Void.class); + + public static final ItemApiLookup VARIANT_ITEM_LOOKUP = ItemApiLookup.get(modLoc("variant_item"), ADVariantItem.class, Void.class); + @Override public void registerEntityComponentFactories(EntityComponentFactoryRegistry registry) { registry.registerFor(Mob.class, BRAINSWEPT, CCBrainswept::new); @@ -88,34 +91,17 @@ public void registerEntityComponentFactories(EntityComponentFactoryRegistry regi @Override public void registerItemComponentMigrations(ItemComponentMigrationRegistry registry) { - registry.registerMigration(modLoc("pigment"), PigmentItemComponent.COMPONENT_TYPE); + registry.registerMigration(modLoc("pigment"), HexDataComponents.PIGMENT); - registry.registerMigration(modLoc("iota_holder"), ItemIotaHolderComponent.COMPONENT_TYPE); + registry.registerMigration(modLoc("iota_holder"), HexDataComponents.IOTA); // oh havoc, you think you're so funny // the worst part is you're /right/ - registry.registerMigration(Items.PUMPKIN_PIE, IOTA_HOLDER, stack -> new CCItemIotaHolder.Static(stack, - s -> new DoubleIota(Math.PI * s.getCount()))); - - registry.registerMigration(modLoc("media_holder"), ItemMediaHolderComponent.COMPONENT_TYPE); - registry.registerMigration(modLoc("media_holder"), s -> new CCMediaHolder.Static( - () -> HexConfig.common().dustMediaAmount(), ADMediaHolder.AMETHYST_DUST_PRIORITY, s - )); - registry.registerMigration(Items.AMETHYST_SHARD, MEDIA_HOLDER, s -> new CCMediaHolder.Static( - () -> HexConfig.common().shardMediaAmount(), ADMediaHolder.AMETHYST_SHARD_PRIORITY, s - )); - registry.registerMigration(HexItems.CHARGED_AMETHYST, MEDIA_HOLDER, s -> new CCMediaHolder.Static( - () -> HexConfig.common().chargedCrystalMediaAmount(), ADMediaHolder.CHARGED_AMETHYST_PRIORITY, s - )); - registry.registerMigration(HexItems.QUENCHED_SHARD.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( - () -> MediaConstants.QUENCHED_SHARD_UNIT, ADMediaHolder.QUENCHED_SHARD_PRIORITY, s - )); - registry.registerMigration(HexBlocks.QUENCHED_ALLAY.asItem(), MEDIA_HOLDER, s -> new CCMediaHolder.Static( - () -> MediaConstants.QUENCHED_BLOCK_UNIT, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, s - )); - - registry.registerMigration(modLoc("hex_holder"), ItemHexHolderComponent.COMPONENT_TYPE); - - registry.registerMigration(modLoc("variant_item"), VariantItemComponent.COMPONENT_TYPE); + + registry.registerMigration(modLoc("media_holder"), HexDataComponents.MEDIA); + + registry.registerMigration(modLoc("hex_holder"), HexDataComponents.PATTERNS); + + registry.registerMigration(modLoc("variant_item"), HexDataComponents.VARIANT); } private ComponentFactory wrapItemEntityDelegate(Function provider) { } @Override - public @Nullable CompoundTag readIotaTag() { - var iota = this.provider.apply(this.stack); - return iota == null ? null : IotaType.serialize(iota); + public @Nullable Iota readIota() { + return this.provider.apply(this.stack); } @Override @@ -74,5 +84,15 @@ public boolean writeable() { public boolean writeIota(@Nullable Iota datum, boolean simulate) { return false; } + + @Override + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } + + @Override + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java index 2fedc1476a..7a565fa4fe 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java @@ -2,6 +2,8 @@ import at.petrak.hexcasting.api.addldata.ADMediaHolder; import at.petrak.hexcasting.api.item.MediaHolderItem; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.world.item.ItemStack; @@ -68,6 +70,16 @@ public long withdrawMedia(long cost, boolean simulate) { public long insertMedia(long amount, boolean simulate) { return this.mediaHolder.insertMedia(this.stack, amount, simulate); } + + @Override + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } + + @Override + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } } public static class Static extends CCMediaHolder { @@ -128,5 +140,15 @@ public long withdrawMedia(long cost, boolean simulate) { } return itemsUsed * worth; } + + @Override + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } + + @Override + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java index 076ec1fa6e..a2274897dc 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java @@ -5,7 +5,6 @@ import at.petrak.hexcasting.api.pigment.ColorProvider; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import org.ladysnake.cca.api.v3.component.TransientComponent; -import org.ladysnake.cca.api.v3.item.ItemComponent; import net.minecraft.world.item.ItemStack; import java.util.UUID; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java index df0bb4c2b8..57a40eb67b 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java @@ -3,9 +3,10 @@ import at.petrak.hexcasting.api.addldata.ADVariantItem; import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.Item; import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.item.ItemComponent; import net.minecraft.world.item.ItemStack; public abstract class CCVariantItem implements ADVariantItem, Component { @@ -40,5 +41,15 @@ public int getVariant() { public void setVariant(int variant) { variantItem.setVariant(this.stack, variant); } + + @Override + public void readFromNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } + + @Override + public void writeToNbt(CompoundTag tag, HolderLookup.Provider registryLookup) { + + } } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java index eb4f16aa78..3b6821fd9e 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java @@ -1,25 +1,26 @@ package at.petrak.hexcasting.fabric.datagen; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; -import com.google.gson.JsonObject; -import net.fabricmc.fabric.api.resource.conditions.v1.ConditionJsonProvider; -import net.fabricmc.fabric.api.resource.conditions.v1.DefaultResourceConditions; +import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; +import net.fabricmc.fabric.api.resource.conditions.v1.ResourceCondition; +import net.fabricmc.fabric.api.resource.conditions.v1.ResourceConditions; import net.fabricmc.fabric.impl.datagen.FabricDataGenHelper; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.data.recipes.FinishedRecipe; +import net.minecraft.advancements.Advancement; +import net.minecraft.advancements.AdvancementHolder; +import net.minecraft.advancements.Criterion; import net.minecraft.data.recipes.RecipeBuilder; +import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; -import net.minecraft.world.item.crafting.RecipeSerializer; +import net.minecraft.world.item.crafting.Recipe; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; -import java.util.function.Consumer; public class HexFabricConditionsBuilder implements IXplatConditionsBuilder { - private final List conditions = new ArrayList<>(); + private final List conditions = new ArrayList<>(); private final RecipeBuilder parent; public HexFabricConditionsBuilder(RecipeBuilder parent) { @@ -28,18 +29,18 @@ public HexFabricConditionsBuilder(RecipeBuilder parent) { @Override public IXplatConditionsBuilder whenModLoaded(String modid) { - conditions.add(DefaultResourceConditions.allModsLoaded(modid)); + conditions.add(ResourceConditions.allModsLoaded(modid)); return this; } @Override public IXplatConditionsBuilder whenModMissing(String modid) { - conditions.add(DefaultResourceConditions.not(DefaultResourceConditions.allModsLoaded(modid))); + conditions.add(ResourceConditions.not(ResourceConditions.allModsLoaded(modid))); return this; } @Override - public RecipeBuilder unlockedBy(@NotNull String string, @NotNull CriterionTriggerInstance criterionTriggerInstance) { + public RecipeBuilder unlockedBy(@NotNull String string, @NotNull Criterion criterionTriggerInstance) { return parent.unlockedBy(string, criterionTriggerInstance); } @@ -55,40 +56,20 @@ public Item getResult() { @Override @SuppressWarnings("UnstableApiUsage") - public void save(@NotNull Consumer consumer, @NotNull ResourceLocation resourceLocation) { - Consumer withConditions = json -> { - FabricDataGenHelper.addConditions(json, conditions.toArray(new ConditionJsonProvider[0])); - - consumer.accept(new FinishedRecipe() { - @Override - public void serializeRecipeData(@NotNull JsonObject jsonObject) { - json.serializeRecipeData(jsonObject); - ConditionJsonProvider[] conditions = FabricDataGenHelper.consumeConditions(json); - ConditionJsonProvider.write(jsonObject, conditions); - } - - @Override - public ResourceLocation getId() { - return json.getId(); - } - - @Override - public RecipeSerializer getType() { - return json.getType(); - } - - @Nullable - @Override - public JsonObject serializeAdvancement() { - return json.serializeAdvancement(); - } - - @Nullable - @Override - public ResourceLocation getAdvancementId() { - return json.getAdvancementId(); - } - }); + public void save(@NotNull RecipeOutput consumer, @NotNull ResourceLocation resourceLocation) { + ResourceCondition[] array = conditions.toArray(ResourceCondition[]::new); + + RecipeOutput withConditions = new RecipeOutput() { + @Override + public void accept(ResourceLocation resourceLocation, Recipe recipe, @Nullable AdvancementHolder advancementHolder) { + FabricDataGenHelper.addConditions(consumer, array); + consumer.accept(resourceLocation, recipe, advancementHolder); + } + + @Override + public Advancement.Builder advancement() { + return consumer.advancement(); + } }; parent.save(withConditions, resourceLocation); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java index 6bf539423a..828eddea9d 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java @@ -33,20 +33,21 @@ public void onInitializeDataGenerator(FabricDataGenerator gen) { var pack = gen.createPack(); var xtags = IXplatAbstractions.INSTANCE.tags(); + var provider = gen.getRegistries(); - pack.addProvider((FabricDataGenerator.Pack.Factory) x -> new HexplatRecipes(x, INGREDIENTS, HexFabricConditionsBuilder::new)); + pack.addProvider((FabricDataGenerator.Pack.Factory) x -> new HexplatRecipes(x, provider, INGREDIENTS, HexFabricConditionsBuilder::new)); var btagProviderWrapper = new BlockTagProviderWrapper(); // CURSED pack.addProvider((output, lookup) -> { btagProviderWrapper.provider = new HexBlockTagProvider(output, lookup, xtags); return btagProviderWrapper.provider; }); - pack.addProvider((output, lookup) -> new HexItemTagProvider(output, lookup, btagProviderWrapper.provider, xtags)); + pack.addProvider((output, lookup) -> new HexItemTagProvider(output, lookup, btagProviderWrapper.provider.contentsGetter(), xtags)); pack.addProvider(HexActionTagProvider::new); pack.addProvider((FabricDataGenerator.Pack.Factory) (output) -> new LootTableProvider( - output, Set.of(), List.of(new LootTableProvider.SubProviderEntry(HexLootTables::new, LootContextParamSets.ALL_PARAMS)) + output, Set.of(), List.of(new LootTableProvider.SubProviderEntry(HexLootTables::new, LootContextParamSets.ALL_PARAMS)), provider )); } @@ -117,10 +118,10 @@ public EnumMap dyes() { new Ingredient.ItemValue(new ItemStack(DyeItem.byColor(col))), new Ingredient.TagValue( TagKey.create(Registries.ITEM, - new ResourceLocation("c", col.getSerializedName() + "_dye"))), + ResourceLocation.fromNamespaceAndPath("c", col.getSerializedName() + "_dye"))), new Ingredient.TagValue( TagKey.create(Registries.ITEM, - new ResourceLocation("c", col.getSerializedName() + "_dyes")) + ResourceLocation.fromNamespaceAndPath("c", col.getSerializedName() + "_dyes")) )))); } return out; @@ -162,6 +163,6 @@ private static TagKey tag(String s) { } private static TagKey tag(String namespace, String s) { - return TagKey.create(Registries.ITEM, new ResourceLocation(namespace, s)); + return TagKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(namespace, s)); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/AccessoriesApiInterop.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/AccessoriesApiInterop.java new file mode 100644 index 0000000000..666d6cccac --- /dev/null +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/AccessoriesApiInterop.java @@ -0,0 +1,47 @@ +package at.petrak.hexcasting.fabric.interop.accessories; + +import at.petrak.hexcasting.api.misc.DiscoveryHandlers; +import at.petrak.hexcasting.common.items.HexBaubleItem; +import at.petrak.hexcasting.common.items.magic.ItemCreativeUnlocker; +import at.petrak.hexcasting.common.lib.HexItems; +import io.wispforest.accessories.api.AccessoriesAPI; +import io.wispforest.accessories.api.AccessoriesCapability; +import io.wispforest.accessories.api.Accessory; +import io.wispforest.accessories.api.attributes.AccessoryAttributeBuilder; +import io.wispforest.accessories.api.slot.SlotReference; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.world.item.ItemStack; + +import static io.wispforest.accessories.api.client.AccessoriesRendererRegistry.registerRenderer; + +public class AccessoriesApiInterop { + public static void init() { + BuiltInRegistries.ITEM.stream().forEach(item -> { + if (item instanceof HexBaubleItem bauble) { + AccessoriesAPI.registerAccessory(item, new Accessory() { + @Override + public void getDynamicModifiers(ItemStack stack, SlotReference slot, AccessoryAttributeBuilder builder) { + bauble.getHexBaubleAttrs(stack).forEach(builder::addExclusive); + } + }); + } + }); + + + DiscoveryHandlers.addDebugItemDiscoverer((player, type) -> { + AccessoriesCapability slots = AccessoriesCapability.get(player); + if (slots != null) { + var stack2 = slots.getEquipped(stack -> ItemCreativeUnlocker.isDebug(stack, type)); + if (stack2 != null) return stack2.getFirst().stack(); + } + return ItemStack.EMPTY; + }); + } + + @Environment(EnvType.CLIENT) + public static void clientInit() { + registerRenderer(HexItems.SCRYING_LENS, LensAccessoryRenderer::new); + } +} diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/trinkets/LensTrinketRenderer.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/LensAccessoryRenderer.java similarity index 55% rename from Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/trinkets/LensTrinketRenderer.java rename to Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/LensAccessoryRenderer.java index 805905d03f..2e80525fe5 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/trinkets/LensTrinketRenderer.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/accessories/LensAccessoryRenderer.java @@ -1,18 +1,17 @@ -package at.petrak.hexcasting.fabric.interop.trinkets; +package at.petrak.hexcasting.fabric.interop.accessories; import at.petrak.hexcasting.common.lib.HexItems; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.math.Axis; -import dev.emi.trinkets.api.SlotReference; -import dev.emi.trinkets.api.client.TrinketRenderer; +import io.wispforest.accessories.api.client.AccessoryRenderer; +import io.wispforest.accessories.api.slot.SlotReference; import net.minecraft.client.Minecraft; import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; @@ -20,23 +19,17 @@ * @author WireSegal * Created at 9:50 AM on 7/25/22. */ -public class LensTrinketRenderer implements TrinketRenderer { +public class LensAccessoryRenderer implements AccessoryRenderer { @Override @SuppressWarnings("unchecked") - public void render(ItemStack stack, SlotReference slotReference, EntityModel model, - PoseStack matrices, MultiBufferSource multiBufferSource, int light, LivingEntity entity, - float limbAngle, float limbDistance, float tickDelta, float animationProgress, - float headYaw, float headPitch) { + public void render(ItemStack stack, SlotReference slotReference, PoseStack matrices, EntityModel model, MultiBufferSource multiBufferSource, int light, float v, float v1, float v2, float v3, float v4, float v5) { if (stack.is(HexItems.SCRYING_LENS) && - model instanceof PlayerModel playerModel && - entity instanceof AbstractClientPlayer player) { + model instanceof PlayerModel playerModel && slotReference.entity() instanceof Player) { // from https://github.com/Creators-of-Create/Create/blob/ee33823ed0b5084af10ed131a1626ce71db4c07e/src/main/java/com/simibubi/create/compat/curios/GogglesCurioRenderer.java // Translate and rotate with our head matrices.pushPose(); - TrinketRenderer.followBodyRotations(entity, playerModel); - TrinketRenderer.translateToFace(matrices, playerModel, player, headYaw, headPitch); // Translate and scale to our head matrices.translate(0, 0, 0.3); @@ -46,9 +39,8 @@ public void render(ItemStack stack, SlotReference slotReference, EntityModel { - if (item instanceof HexBaubleItem bauble) { - TrinketsApi.registerTrinket(item, new Trinket() { - @Override - public Multimap getModifiers(ItemStack stack, SlotReference slot, - LivingEntity entity, UUID uuid) { - var map = Trinket.super.getModifiers(stack, slot, entity, uuid); - map.putAll(bauble.getHexBaubleAttrs(stack)); - return map; - } - }); - } - }); - - - DiscoveryHandlers.addDebugItemDiscoverer((player, type) -> { - Optional optional = TrinketsApi.getTrinketComponent(player); - if (optional.isPresent()) { - TrinketComponent component = optional.get(); - var equipped = component.getEquipped(stack -> ItemCreativeUnlocker.isDebug(stack, type)); - if (!equipped.isEmpty()) { - return equipped.get(0).getB(); - } - } - return ItemStack.EMPTY; - }); - } - - @Environment(EnvType.CLIENT) - public static void clientInit() { - TrinketRendererRegistry.registerRenderer(HexItems.SCRYING_LENS, new LensTrinketRenderer()); - } -} diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java index 75b4410e43..ecf41ed746 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java @@ -4,17 +4,20 @@ import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; import at.petrak.hexcasting.common.loot.AddHexToAncientCypherFunc; import at.petrak.hexcasting.fabric.FabricHexInitializer; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.storage.loot.LootPool; +import net.minecraft.world.level.storage.loot.LootTable; import net.minecraft.world.level.storage.loot.entries.LootItem; -import net.minecraft.world.level.storage.loot.entries.LootTableReference; +import net.minecraft.world.level.storage.loot.entries.NestedLootTable; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.level.storage.loot.predicates.LootItemRandomChanceCondition; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator; import org.jetbrains.annotations.NotNull; +import java.util.List; import java.util.function.Consumer; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -23,21 +26,21 @@ public class FabricHexLootModJankery { public static final ResourceLocation FUNC_AMETHYST_SHARD_REDUCER = modLoc("amethyst_shard_reducer"); - public static void lootLoad(ResourceLocation id, Consumer addPool) { + public static void lootLoad(ResourceKey id, Consumer addPool) { if (id.equals(Blocks.AMETHYST_CLUSTER.getLootTable())) { addPool.accept(makeAmethystInjectPool()); } - int countRange = FabricHexInitializer.CONFIG.server.scrollRangeForLootTable(id); + int countRange = FabricHexInitializer.CONFIG.server.scrollRangeForLootTable(id.location()); if (countRange != -1) { addPool.accept(makeScrollAddPool(countRange)); } - if (FabricHexInitializer.CONFIG.server.shouldInjectLore(id)) { + if (FabricHexInitializer.CONFIG.server.shouldInjectLore(id.location())) { addPool.accept(makeLoreAddPool(FabricHexInitializer.CONFIG.server.loreChance())); } - if (FabricHexInitializer.CONFIG.server.shouldInjectCyphers(id)) { + if (FabricHexInitializer.CONFIG.server.shouldInjectCyphers(id.location())) { addPool.accept(makeCypherAddPool(FabricHexInitializer.CONFIG.server.cypherChance())); } } @@ -45,14 +48,14 @@ public static void lootLoad(ResourceLocation id, Consumer addP @NotNull private static LootPool.Builder makeAmethystInjectPool() { return LootPool.lootPool() - .add(LootTableReference.lootTableReference(TABLE_INJECT_AMETHYST_CLUSTER)); + .add(NestedLootTable.lootTableReference(TABLE_INJECT_AMETHYST_CLUSTER)); } private static LootPool.Builder makeScrollAddPool(int range) { return LootPool.lootPool() .setRolls(UniformGenerator.between(-range, range)) .add(LootItem.lootTableItem(HexItems.SCROLL_LARGE)) - .apply(() -> new AddPerWorldPatternToScrollFunc(new LootItemCondition[0])); + .apply(() -> new AddPerWorldPatternToScrollFunc(List.of(new LootItemCondition[0]))); } private static LootPool.Builder makeLoreAddPool(double chance) { @@ -67,6 +70,6 @@ private static LootPool.Builder makeCypherAddPool(double chance) { .when(LootItemRandomChanceCondition.randomChance((float) chance)) .setRolls(ConstantValue.exactly(1)) .add(LootItem.lootTableItem(HexItems.ANCIENT_CYPHER)) - .apply(() -> new AddHexToAncientCypherFunc(new LootItemCondition[0])); + .apply(() -> new AddHexToAncientCypherFunc(List.of(new LootItemCondition[0]))); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java index 70b6bc2113..c691f1d7b2 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java @@ -5,7 +5,6 @@ import at.petrak.hexcasting.mixin.accessor.AccessorLootTable; import net.minecraft.server.ReloadableServerResources; import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.storage.loot.LootDataId; import net.minecraft.world.level.storage.loot.LootDataType; import net.minecraft.world.level.storage.loot.functions.LootItemFunctions; import org.spongepowered.asm.mixin.Mixin; @@ -19,22 +18,4 @@ @Mixin(ReloadableServerResources.class) public class FabricMixinReloadableServerResources { // Add the amethyst shard - @Inject(method = "loadResources", at = @At("RETURN"), cancellable = true) - private static void onLoadResources(CallbackInfoReturnable> cir) { - cir.setReturnValue(cir.getReturnValue().thenApply((rsr) -> { - var amethystTable = rsr.getLootData().getLootTable(Blocks.AMETHYST_CLUSTER.getLootTable()); - var theCoolerAmethystTable = (AccessorLootTable) amethystTable; - var oldFuncs = theCoolerAmethystTable.hex$getFunctions(); - var newFuncs = Arrays.copyOf(oldFuncs, oldFuncs.length + 1); - var shardReducer = rsr.getLootData().getElement(new LootDataId<>(LootDataType.MODIFIER, FabricHexLootModJankery.FUNC_AMETHYST_SHARD_REDUCER)); - if (shardReducer != null) { - newFuncs[newFuncs.length - 1] = shardReducer; - theCoolerAmethystTable.hex$setFunctions(newFuncs); - theCoolerAmethystTable.hex$setCompositeFunction(LootItemFunctions.compose(newFuncs)); - } else { - HexAPI.LOGGER.warn("{} was not found?", FabricHexLootModJankery.FUNC_AMETHYST_SHARD_REDUCER); - } - return rsr; - })); - } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java index b644801a83..c4f0d7d3cf 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java @@ -4,6 +4,7 @@ import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.client.resources.model.ModelManager; +import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.util.profiling.ProfilerFiller; @@ -14,6 +15,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.LocalCapture; +import java.util.HashMap; import java.util.Map; // https://github.com/VazkiiMods/Botania/blob/986dff2e8cd9f40f7e4d6ed7b30c98944bdb3b87/Fabric/src/main/java/vazkii/botania/fabric/mixin/client/ModelManagerFabricMixin.java#L34 @@ -29,6 +31,8 @@ public class FabricModelManagerMixin { "Lnet/minecraft/util/profiling/ProfilerFiller;)V", locals = LocalCapture.CAPTURE_FAILEXCEPTION) private void onModelBake(ModelManager.ReloadState reloadState, ProfilerFiller profiler, CallbackInfo ci, ModelBakery modelLoader) { - RegisterClientStuff.onModelBake(modelLoader, this.bakedRegistry); + Map newRegistry = new HashMap<>(); + this.bakedRegistry.forEach(((resourceLocation, bakedModel) -> newRegistry.put(new ModelResourceLocation(resourceLocation, ModelResourceLocation.INVENTORY_VARIANT), bakedModel))); + RegisterClientStuff.onModelBake(modelLoader, newRegistry); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java index f25407916d..b21e65af46 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java @@ -15,10 +15,10 @@ public class FabricPacketHandler { public static void init() { - ServerPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternC2S.ID, + ServerPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternC2S.TYPE, makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); ServerPlayNetworking.registerGlobalReceiver( - MsgShiftScrollC2S.ID, makeServerBoundHandler(MsgShiftScrollC2S::handle)); + MsgShiftScrollC2S.TYPE, makeServerBoundHandler(MsgShiftScrollC2S::handle)); } private static ServerPlayNetworking.PlayPayloadHandler makeServerBoundHandler( @@ -27,23 +27,23 @@ private static ServerPlayNetworking.PlayPayloadH } public static void initClient() { - ClientPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternS2C.TYPE, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); ClientPlayNetworking.registerGlobalReceiver( - MsgBlinkS2C.ID, makeClientBoundHandler(MsgBlinkS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgCastParticleS2C.ID, + MsgBlinkS2C.TYPE, makeClientBoundHandler(MsgBlinkS2C::handle)); + ClientPlayNetworking.registerGlobalReceiver(MsgCastParticleS2C.TYPE, makeClientBoundHandler(MsgCastParticleS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgOpenSpellGuiS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgOpenSpellGuiS2C.TYPE, makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgBeepS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgBeepS2C.TYPE, makeClientBoundHandler(MsgBeepS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgNewWallScrollS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgNewWallScrollS2C.TYPE, makeClientBoundHandler(MsgNewWallScrollS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgRecalcWallScrollDisplayS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgRecalcWallScrollDisplayS2C.TYPE, makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgNewSpiralPatternsS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgNewSpiralPatternsS2C.TYPE, makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver(MsgClearSpiralPatternsS2C.ID, + ClientPlayNetworking.registerGlobalReceiver(MsgClearSpiralPatternsS2C.TYPE, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java index a25fdea847..4531837c05 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java @@ -4,9 +4,11 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; +import com.mojang.serialization.JsonOps; import io.github.tropheusj.serialization_hooks.ingredient.BaseCustomIngredient; import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; @@ -18,6 +20,7 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; + public class FabricModConditionalIngredient extends BaseCustomIngredient { public static final ResourceLocation ID = modLoc("mod_conditional"); @@ -36,9 +39,7 @@ protected FabricModConditionalIngredient(Ingredient main, String modid, Ingredie this.toUse = IXplatAbstractions.INSTANCE.isModPresent(modid) ? ifModLoaded : main; } - /** - * Creates a new ingredient matching the given stack - */ + public static FabricModConditionalIngredient of(Ingredient main, String modid, Ingredient ifModLoaded) { return new FabricModConditionalIngredient(main, modid, ifModLoaded); } @@ -48,23 +49,13 @@ public boolean test(@Nullable ItemStack input) { return toUse.test(input); } - @Override - public @NotNull JsonElement toJson() { - JsonObject json = new JsonObject(); - json.addProperty("type", Objects.toString(ID)); - json.add("default", main.toJson()); - json.addProperty("modid", modid); - json.add("if_loaded", ifModLoaded.toJson()); - return json; - } - @Override public IngredientDeserializer getDeserializer() { return Deserializer.INSTANCE; } public static Ingredient fromNetwork(FriendlyByteBuf friendlyByteBuf) { - return Ingredient.fromNetwork(friendlyByteBuf); // Just send the actual ingredient + return Ingredient.CONTENTS_STREAM_CODEC.decode((RegistryFriendlyByteBuf) friendlyByteBuf); // Just send the actual ingredient } public static Ingredient fromJson(JsonElement element) { @@ -76,7 +67,7 @@ public static Ingredient fromJson(JsonElement element) { if (object.has("type") && object.getAsJsonPrimitive("type").getAsString().equals(ID.toString())) { if (object.has("modid") && IXplatAbstractions.INSTANCE.isModPresent(object.getAsJsonPrimitive("modid").getAsString())) { try { - Ingredient ingredient = Ingredient.fromJson(object.get("if_loaded")); + Ingredient ingredient = Ingredient.CODEC.decode(JsonOps.INSTANCE, object.get("if_loaded")).getOrThrow().getFirst(); if (!ingredient.isEmpty()) { return ingredient; } @@ -85,18 +76,12 @@ public static Ingredient fromJson(JsonElement element) { } } - return Ingredient.fromJson(object.get("default")); + return Ingredient.CODEC.decode(JsonOps.INSTANCE, object.get("default")).getOrThrow().getFirst(); } return null; } - @Override - public void toNetwork(@NotNull FriendlyByteBuf friendlyByteBuf) { - friendlyByteBuf.writeResourceLocation(ID); - toUse.toNetwork(friendlyByteBuf); - } - public static class Deserializer implements IngredientDeserializer { public static final Deserializer INSTANCE = new Deserializer(); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java index 267b7e8ebe..35dc97a4ad 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java @@ -4,17 +4,23 @@ import at.petrak.hexcasting.api.utils.NBTHelper; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.mojang.serialization.JsonOps; import io.github.tropheusj.serialization_hooks.ingredient.BaseCustomIngredient; import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; +import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.ShapedRecipe; import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; +import javax.xml.crypto.Data; import java.util.Objects; import java.util.stream.Stream; @@ -27,7 +33,9 @@ public class FabricUnsealedIngredient extends BaseCustomIngredient { private static ItemStack createStack(ItemStack base) { ItemStack newStack = base.copy(); - NBTHelper.putString(newStack, IotaHolderItem.TAG_OVERRIDE_VISUALLY, "any"); + CompoundTag tag = newStack.get(DataComponents.CUSTOM_DATA).copyTag(); + NBTHelper.putString(tag, "VisualOverride", "any"); + newStack.set(DataComponents.CUSTOM_DATA, CustomData.of(tag)); return newStack; } @@ -52,21 +60,13 @@ public boolean test(@Nullable ItemStack input) { return false; } - @Override - public @NotNull JsonElement toJson() { - JsonObject json = new JsonObject(); - json.addProperty("type", Objects.toString(ID)); - json.addProperty("item", Objects.toString(BuiltInRegistries.ITEM.getKey(this.stack.getItem()))); - return json; - } - @Override public IngredientDeserializer getDeserializer() { return Deserializer.INSTANCE; } - public static Ingredient fromNetwork(FriendlyByteBuf friendlyByteBuf) { - return new FabricUnsealedIngredient(friendlyByteBuf.readItem()); + public static Ingredient fromNetwork(RegistryFriendlyByteBuf friendlyByteBuf) { + return new FabricUnsealedIngredient(ItemStack.STREAM_CODEC.decode(friendlyByteBuf)); } public static Ingredient fromJson(JsonElement element) { @@ -77,24 +77,18 @@ public static Ingredient fromJson(JsonElement element) { JsonObject object = element.getAsJsonObject(); if (object.has("type") && object.getAsJsonPrimitive("type").getAsString().equals(ID.toString())) { - return new FabricUnsealedIngredient(new ItemStack(ShapedRecipe.itemFromJson(object))); + return new FabricUnsealedIngredient(ItemStack.CODEC.parse(JsonOps.INSTANCE, object).getOrThrow()); } return null; } - @Override - public void toNetwork(FriendlyByteBuf friendlyByteBuf) { - friendlyByteBuf.writeResourceLocation(ID); - friendlyByteBuf.writeItem(stack); - } - public static class Deserializer implements IngredientDeserializer { public static final Deserializer INSTANCE = new Deserializer(); @Override public Ingredient fromNetwork(FriendlyByteBuf buffer) { - return FabricUnsealedIngredient.fromNetwork(buffer); + return FabricUnsealedIngredient.fromNetwork((RegistryFriendlyByteBuf) buffer); } @Nullable diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java index a4d47b4776..a9851c4ccf 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java @@ -3,7 +3,7 @@ import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import at.petrak.hexcasting.fabric.client.ExtendedTexture; -import at.petrak.hexcasting.fabric.interop.trinkets.TrinketsApiInterop; +import at.petrak.hexcasting.fabric.interop.accessories.AccessoriesApiInterop; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import at.petrak.hexcasting.xplat.IXplatAbstractions; @@ -44,7 +44,7 @@ public void setRenderLayer(Block block, RenderType type) { @Override public void initPlatformSpecific() { if (IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Fabric.TRINKETS_API_ID)) { - TrinketsApiInterop.clientInit(); + AccessoriesApiInterop.clientInit(); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index 0c60c91e09..26623ae378 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -21,14 +21,17 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.components.PigmentItemComponent; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; -import at.petrak.hexcasting.fabric.interop.trinkets.TrinketsApiInterop; +import at.petrak.hexcasting.fabric.interop.accessories.AccessoriesApiInterop; import at.petrak.hexcasting.fabric.recipe.FabricUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.hexcasting.xplat.IXplatRegister; import at.petrak.hexcasting.xplat.IXplatTags; import at.petrak.hexcasting.xplat.Platform; import com.google.common.base.Suppliers; @@ -53,6 +56,7 @@ import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -78,6 +82,7 @@ import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.level.storage.loot.predicates.MatchTool; import net.minecraft.world.phys.Vec3; +import org.apache.commons.codec.binary.Hex; import org.jetbrains.annotations.Nullable; import virtuoel.pehkui.api.ScaleTypes; @@ -107,7 +112,7 @@ public boolean isModPresent(String id) { @Override public void initPlatformSpecific() { if (this.isModPresent(HexInterop.Fabric.TRINKETS_API_ID)) { - TrinketsApiInterop.init(); + AccessoriesApiInterop.init(); } } @@ -118,7 +123,7 @@ public void initPlatformSpecific() { @Override public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { - ServerPlayNetworking.send(target, packet.getFabricId(), packet.toBuf()); + ServerPlayNetworking.send(target, packet); } @Override @@ -132,7 +137,7 @@ public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { } private void sendPacketToPlayers(Collection players, CustomPacketPayload packet) { - var pkt = ServerPlayNetworking.createS2CPacket(packet.getFabricId(), packet.toBuf()); + var pkt = ServerPlayNetworking.createS2CPacket(packet); for (var p : players) { p.connection.send(pkt); } @@ -140,7 +145,7 @@ private void sendPacketToPlayers(Collection players, CustomPacketP @Override public Packet toVanillaClientboundPacket(CustomPacketPayload message) { - return ServerPlayNetworking.createS2CPacket(message.getFabricId(), message.toBuf()); + return (Packet) (Object) ServerPlayNetworking.createS2CPacket(message); } @Override @@ -237,21 +242,13 @@ public void clearCastingData(ServerPlayer player) { @Override public @Nullable ADMediaHolder findMediaHolder(ItemStack stack) { - var cc = HexCardinalComponents.MEDIA_HOLDER.maybeGet(stack); - return cc.orElse(null); - } - - @Override - public @Nullable ADMediaHolder findMediaHolder(ServerPlayer player) { - var cc = HexCardinalComponents.MEDIA_HOLDER.maybeGet(player); - return cc.orElse(null); + return HexCardinalComponents.MEDIA_HOLDER_LOOKUP.find(stack, null); } @Override public @Nullable ADIotaHolder findDataHolder(ItemStack stack) { - var cc = HexCardinalComponents.IOTA_HOLDER.maybeGet(stack); - return cc.orElse(null); + return HexCardinalComponents.IOTA_HOLDER_LOOKUP.find(stack, null); } @Override @@ -264,19 +261,17 @@ ADIotaHolder findDataHolder(Entity entity) { @Override public @Nullable ADHexHolder findHexHolder(ItemStack stack) { - var cc = HexCardinalComponents.HEX_HOLDER.maybeGet(stack); - return cc.orElse(null); + return HexCardinalComponents.HEX_HOLDER_LOOKUP.find(stack, null); } @Override - public @Nullable ADVariantItem findVariantHolder(ItemStack stack) { - var cc = HexCardinalComponents.VARIANT_ITEM.maybeGet(stack); - return cc.orElse(null); + public ADVariantItem findVariantHolder(ItemStack stack) { + return HexCardinalComponents.VARIANT_ITEM_LOOKUP.find(stack, null); } @Override public boolean isPigment(ItemStack stack) { - return stack.get(PigmentItemComponent.COMPONENT_TYPE) != null; + return stack.get(HexDataComponents.PIGMENT) != null; } @Override @@ -424,8 +419,8 @@ public String getModName(String namespace) { .buildAndRegister() ); private static final Supplier>> IOTA_TYPE_REGISTRY = Suppliers.memoize(() -> - FabricRegistryBuilder.from(new DefaultedMappedRegistry<>( - HexAPI.MOD_ID + ":null", HexRegistries.IOTA_TYPE, + FabricRegistryBuilder.from(new MappedRegistry<>( + HexRegistries.IOTA_TYPE, Lifecycle.stable(), false)) .buildAndRegister() ); @@ -451,6 +446,20 @@ public String getModName(String namespace) { .buildAndRegister() ); + private static final Supplier>> STATE_INGREDIENT_REGISTRY = Suppliers.memoize(() -> + FabricRegistryBuilder.from(new MappedRegistry<>( + HexRegistries.STATE_INGREDIENT, + Lifecycle.stable(), false)) + .buildAndRegister() + ); + + private static final Supplier>> BRAINSWEEPEE_INGREDIENT_REGISTRY = Suppliers.memoize(() -> + FabricRegistryBuilder.from(new MappedRegistry<>( + HexRegistries.BRAINSWEEPEE_INGREDIENT, + Lifecycle.stable(), false)) + .buildAndRegister() + ); + @Override public Registry getActionRegistry() { return ACTION_REGISTRY.get(); @@ -481,6 +490,16 @@ public Registry getEvalSoundRegistry() { return EVAL_SOUNDS_REGISTRY.get(); } + @Override + public Registry> getStateIngredientRegistry() { + return STATE_INGREDIENT_REGISTRY.get(); + } + + @Override + public Registry> getBrainsweepeeIngredientRegistry() { + return BRAINSWEEPEE_INGREDIENT_REGISTRY.get(); + } + @Override public boolean isBreakingAllowed(ServerLevel world, BlockPos pos, BlockState state, @Nullable Player player) { if (player == null) @@ -500,6 +519,11 @@ public boolean isPlacingAllowed(ServerLevel world, BlockPos pos, ItemStack block return success.getResult() == InteractionResult.PASS; // No other mod tried to consume this } + @Override + public IXplatRegister createRegistar(ResourceKey> registryKey) { + return null; + } + private static PehkuiInterop.ApiAbstraction PEHKUI_API = null; @Override diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index e2ca089748..beb61e477f 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -41,11 +41,17 @@ repositories { dir 'libs' } - maven { url "https://maven.neoforged.net/releases/" } + maven { url = "https://maven.neoforged.net/releases/" } // paucal and patchi maven { url = 'https://maven.blamejared.com' } - // caelus elytra - maven { url = "https://maven.theillusivec4.top" } + maven { + name = "Curios" + url = uri("https://maven.theillusivec4.top/") + } + maven { + name = "C4's Maven" + setUrl("https://maven.theillusivec4.top/") + } // pehkui maven { url = "https://jitpack.io" } // EMI @@ -68,23 +74,20 @@ dependencies { neoForge "net.neoforged:neoforge:${neoforgeVersion}" common(project(path: ':Common', configuration: 'namedElements')) { transitive false } shadowBundle(project(path: ':Common', configuration: 'transformProductionNeoForge')) { transitive false } -<<<<<<< HEAD - implementation "thedarkcolour:kotlinforforge-neoforge:$kotlinForForgeVersion" -======= - modImplementation "thedarkcolour:kotlinforforge:$kotlinForForgeVersion" ->>>>>>> refs/remotes/slava/devel/port-1.21 + modImplementation "thedarkcolour:kotlinforforge-neoforge:$kotlinForForgeVersion" // === MANDATORY DEPS === - modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" + compileOnly("mezz.jei:jei-$minecraftVersion-neoforge-api:$jeiVersion") + runtimeOnly("mezz.jei:jei-$minecraftVersion-neoforge:$jeiVersion") + + compileOnly("top.theillusivec4.curios:curios-neoforge:$curiosVersion+$minecraftVersion:api") + runtimeOnly("top.theillusivec4.curios:curios-neoforge:$curiosVersion+$minecraftVersion") + + modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-neoforge" modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" -<<<<<<< HEAD - modImplementation "com.illusivesoulworks.caelus:caelus-forge:$caelusVersion" -// implementation("com.samsthenerd.inline:inline-forge:$minecraftVersion-$inlineVersion") -======= - modImplementation "top.theillusivec4.caelus:caelus-forge:$caelusVersion" + modImplementation "com.illusivesoulworks.caelus:caelus-neoforge:$caelusVersion" modImplementation "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" ->>>>>>> refs/remotes/slava/devel/port-1.21 // needed for inline to run modRuntimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") @@ -95,11 +98,6 @@ dependencies { modImplementation "io.wispforest:accessories-neoforge:$accessoriesVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}-1.21-neoforge") -<<<<<<< HEAD - compileOnly("mezz.jei:jei-${minecraftVersion}-neoforge-api:${jeiVersion}") - runtimeOnly("mezz.jei:jei-${minecraftVersion}-neoforge:${jeiVersion}") -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 // "Required due to issues with JIJ dependency resolving in arch or something" // https://github.com/wisp-forest/accessories @@ -155,8 +153,6 @@ processResources { filesMatching("mods.toml") { expand "version": project.version } -<<<<<<< HEAD -======= } shadowJar { @@ -166,5 +162,6 @@ shadowJar { remapJar { inputFile.set shadowJar.archiveFile ->>>>>>> refs/remotes/slava/devel/port-1.21 -} \ No newline at end of file +} + +jar.finalizedBy('remapJar') \ No newline at end of file diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index e8824321d6..a35d3a6636 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -4,6 +4,6 @@ loom.platform=neoforge kotlinForForgeVersion=5.8.0 -curiosVersion=5.2.0-beta.3 +curiosVersion=9.5.1 caelusVersion=7.0.1+1.21.1 jeiVersion=19.25.1.328 diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index 725a9d1feb..394ecec74f 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -12,7 +12,6 @@ import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.lib.HexParticles; import at.petrak.hexcasting.common.misc.PatternTooltip; -import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; import at.petrak.hexcasting.interop.HexInterop; import net.minecraft.client.Minecraft; import net.minecraft.client.color.block.BlockColors; @@ -29,10 +28,6 @@ import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; import net.neoforged.neoforge.client.event.*; import net.neoforged.neoforge.common.NeoForge; -<<<<<<< HEAD -======= -import net.neoforged.neoforge.event.tick.PlayerTickEvent; ->>>>>>> refs/remotes/slava/devel/port-1.21 import java.io.IOException; import java.util.function.Function; @@ -66,7 +61,7 @@ public static void clientInit(FMLClientSetupEvent evt) { }); evBus.addListener((RenderGuiEvent.Post e) -> { - HexAdditionalRenderers.overlayGui(e.getGuiGraphics(), e.getPartialTick().getGameTimeDeltaTicks()); + HexAdditionalRenderers.overlayGui(e.getGuiGraphics(), e.getPartialTick()); }); //TODO port: maybe replace with DeltaTracker from Mojang? @@ -84,12 +79,6 @@ public static void clientInit(FMLClientSetupEvent evt) { e.setCanceled(cancel); }); - evBus.addListener((PlayerTickEvent.Pre ev) -> { - if(!ev.getEntity().isDeadOrDying()) { - ev.getEntity().getData(ForgeHexAttachments.CLIENT_CASTING_STACK).tick(); - } - }); - HexInterop.clientInit(); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java index 3edb4bae45..203f067aec 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java @@ -133,20 +133,6 @@ public boolean clickingTogglesDrawing() { public static class Server implements HexConfig.ServerConfigAccess { private static ModConfigSpec.IntValue opBreakHarvestLevel; private static ModConfigSpec.IntValue maxOpCount; -<<<<<<< HEAD - - private static ModConfigSpec.IntValue maxSpellCircleLength; - - private static ModConfigSpec.ConfigValue> actionDenyList; - private static ModConfigSpec.ConfigValue> circleActionDenyList; - - private static ModConfigSpec.BooleanValue villagersOffendedByMindMurder; - - private static ModConfigSpec.ConfigValue> tpDimDenyList; - - private static ModConfigSpec.BooleanValue doesTrueNameHaveAmbit; - -======= private static ModConfigSpec.IntValue maxSpellCircleLength; private static ModConfigSpec.ConfigValue> actionDenyList; private static ModConfigSpec.ConfigValue> circleActionDenyList; @@ -157,7 +143,6 @@ public static class Server implements HexConfig.ServerConfigAccess { private static ModConfigSpec.BooleanValue doesTrueNameHaveAmbit; private static ModConfigSpec.DoubleValue traderScrollChance; ->>>>>>> refs/remotes/slava/devel/port-1.21 private static ModConfigSpec.ConfigValue> fewScrollTables; private static ModConfigSpec.ConfigValue> someScrollTables; private static ModConfigSpec.ConfigValue> manyScrollTables; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index 118de68279..53128fdf48 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -46,21 +46,6 @@ import net.neoforged.bus.api.IEventBus; import net.neoforged.fml.ModContainer; import net.neoforged.fml.ModList; -<<<<<<< HEAD -import net.neoforged.fml.ModLoadingContext; -import net.neoforged.fml.common.Mod; -import net.neoforged.fml.config.ModConfig; -import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; -import net.neoforged.neoforge.common.ItemAbilities; -import net.neoforged.neoforge.common.ModConfigSpec; -import net.neoforged.neoforge.common.NeoForge; -import net.neoforged.neoforge.common.crafting.CraftingHelper; -import net.neoforged.neoforge.event.BuildCreativeModeTabContentsEvent; -import net.neoforged.neoforge.event.RegisterCommandsEvent; -import net.neoforged.neoforge.event.entity.EntityAttributeModificationEvent; -import net.neoforged.neoforge.event.entity.living.LivingConversionEvent; -import net.neoforged.neoforge.event.entity.living.LivingEvent; -======= import net.neoforged.fml.common.Mod; import net.neoforged.fml.config.ModConfig; import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; @@ -73,20 +58,14 @@ import net.neoforged.neoforge.event.brewing.RegisterBrewingRecipesEvent; import net.neoforged.neoforge.event.entity.EntityAttributeModificationEvent; import net.neoforged.neoforge.event.entity.living.LivingConversionEvent; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.neoforged.neoforge.event.entity.player.PlayerEvent; import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent; import net.neoforged.neoforge.event.level.BlockEvent; import net.neoforged.neoforge.event.server.ServerStartedEvent; -<<<<<<< HEAD -import net.neoforged.neoforge.event.tick.LevelTickEvent; -import net.neoforged.neoforge.network.PacketDistributor; -======= import net.neoforged.neoforge.event.tick.EntityTickEvent; import net.neoforged.neoforge.event.tick.LevelTickEvent; import net.neoforged.neoforge.network.PacketDistributor; import net.neoforged.neoforge.registries.NewRegistryEvent; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.neoforged.neoforge.registries.RegisterEvent; import thedarkcolour.kotlinforforge.neoforge.KotlinModLoadingContext; @@ -95,23 +74,14 @@ @Mod(HexAPI.MOD_ID) public class ForgeHexInitializer { -<<<<<<< HEAD - public ForgeHexInitializer(ModContainer container) { - initConfig(); -======= public ForgeHexInitializer(ModContainer modContainer) { initConfig(modContainer); ->>>>>>> refs/remotes/slava/devel/port-1.21 initRegistries(); initRegistry(); initListeners(); } -<<<<<<< HEAD - private static void initConfig() { -======= private static void initConfig(ModContainer modContainer) { ->>>>>>> refs/remotes/slava/devel/port-1.21 var config = new ModConfigSpec.Builder().configure(ForgeHexConfig::new); var clientConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Client::new); var serverConfig = new ModConfigSpec.Builder().configure(ForgeHexConfig.Server::new); @@ -239,24 +209,15 @@ private static void initListeners() { evBus.addListener((LivingConversionEvent.Post evt) -> BrainsweepingEvents.copyBrainsweepPostTransformation(evt.getEntity(), evt.getOutcome())); -<<<<<<< HEAD - evBus.addListener((LivingEvent evt) -> { -======= evBus.addListener((EntityTickEvent.Post evt) -> { ->>>>>>> refs/remotes/slava/devel/port-1.21 if (evt.getEntity() instanceof ServerPlayer splayer) { OpFlight.tickDownFlight(splayer); OpAltiora.checkPlayerCollision(splayer); } }); -<<<<<<< HEAD - evBus.addListener((LevelTickEvent evt) -> { - if (evt instanceof LevelTickEvent.Post && evt.getLevel() instanceof ServerLevel world) { -======= evBus.addListener((LevelTickEvent.Post evt) -> { if (evt.getLevel() instanceof ServerLevel world) { ->>>>>>> refs/remotes/slava/devel/port-1.21 PlayerPositionRecorder.updateAllPlayers(world); } }); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java index 58f1c4051e..fe9bdc42ff 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java @@ -16,77 +16,21 @@ import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; -<<<<<<< HEAD -======= import net.minecraft.core.registries.BuiltInRegistries; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EntityType; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; -<<<<<<< HEAD -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.neoforged.neoforge.capabilities.BaseCapability; -import net.neoforged.neoforge.capabilities.Capabilities; -import net.neoforged.neoforge.capabilities.ICapabilityProvider; -import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.Optional; -import java.util.function.BooleanSupplier; -import java.util.function.Function; -import java.util.function.Supplier; -======= import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntityType; import net.neoforged.neoforge.capabilities.Capabilities; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; ->>>>>>> refs/remotes/slava/devel/port-1.21 import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgeCapabilityHandler { public static void registerCaps(RegisterCapabilitiesEvent evt) { -<<<<<<< HEAD - evt.registerBlockEntity( - Capabilities.ItemHandler.BLOCK, - , - (impetus, context) -> provide(impetus, Capabilities.ItemHandler.BLOCK, - () -> new ForgeImpetusCapability((BlockEntityAbstractImpetus) impetus) - ); - } - - public static void attachItemCaps(AttachCapabilitiesEvent evt) { - ItemStack stack = evt.getObject(); - - if (stack.getItem() instanceof MediaHolderItem holder) { - evt.addCapability(MEDIA_STORAGE_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapItemMediaHolder(holder, stack))); - } else if (stack.is(HexItems.AMETHYST_DUST)) { - evt.addCapability(MEDIA_STATIC_CAP, provide(stack, HexCapabilities.MEDIA, () -> - new CapStaticMediaHolder(HexConfig.common()::dustMediaAmount, ADMediaHolder.AMETHYST_DUST_PRIORITY, - stack))); - } else if (stack.is(Items.AMETHYST_SHARD)) { - evt.addCapability(MEDIA_STATIC_CAP, provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - HexConfig.common()::shardMediaAmount, ADMediaHolder.AMETHYST_SHARD_PRIORITY, stack))); - } else if (stack.is(HexItems.CHARGED_AMETHYST)) { - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - HexConfig.common()::chargedCrystalMediaAmount, ADMediaHolder.CHARGED_AMETHYST_PRIORITY, stack))); - } else if (stack.is(HexItems.QUENCHED_SHARD)) { - // no one uses the config - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - () -> MediaConstants.QUENCHED_SHARD_UNIT, ADMediaHolder.QUENCHED_SHARD_PRIORITY, stack))); - } else if (stack.is(HexBlocks.QUENCHED_ALLAY.asItem())) { - // no one uses the config - evt.addCapability(MEDIA_STATIC_CAP, - provide(stack, HexCapabilities.MEDIA, () -> new CapStaticMediaHolder( - () -> MediaConstants.QUENCHED_BLOCK_UNIT, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, stack))); -======= for(Item item : BuiltInRegistries.ITEM) { if(item instanceof MediaHolderItem holder) evt.registerItem(HexCapabilities.Item.MEDIA, (stack, ctx) -> new CapItemMediaHolder(holder, stack), item); @@ -100,7 +44,6 @@ public static void attachItemCaps(AttachCapabilitiesEvent evt) { evt.registerItem(HexCapabilities.Item.COLOR, (stack, ctx) -> new CapItemPigment(holder, stack), item); if(item instanceof HexBaubleItem && IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Forge.CURIOS_API_ID)) CuriosApiInterop.registerCap(evt, item); ->>>>>>> refs/remotes/slava/devel/port-1.21 } evt.registerItem( @@ -152,79 +95,6 @@ public static void attachItemCaps(AttachCapabilitiesEvent evt) { (ent, ctx) -> new ItemDelegatingEntityIotaHolder.ToWallScroll(ent) ); -<<<<<<< HEAD - if (IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Forge.CURIOS_API_ID) - && stack.getItem() instanceof HexBaubleItem) { - evt.addCapability(CURIO_CAP, CuriosApiInterop.curioCap(stack)); - } - } - - public static void attachEntityCaps(AttachCapabilitiesEvent evt) { - var entity = evt.getObject(); - if (entity instanceof ItemEntity item) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(item, - ItemDelegatingEntityIotaHolder.ToItemEntity::new)); - } else if (entity instanceof ItemFrame frame) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(frame, - ItemDelegatingEntityIotaHolder.ToItemFrame::new)); - } else if (entity instanceof EntityWallScroll scroll) { - evt.addCapability(IOTA_STORAGE_CAP, wrapItemEntityDelegate(scroll, - ItemDelegatingEntityIotaHolder.ToWallScroll::new)); - } else if (entity instanceof Player player) { - evt.addCapability(PATTERN_SPIRAL, provide(player, HexCapabilities.CLIENT_CASTING_STACK, - () -> new CapClientCastingStack(player, new ClientCastingStack()))); - } - } - - // i do not know why we need super here - private static SimpleProvider wrapItemEntityDelegate(E entity, - Function make) { - return provide(entity, HexCapabilities.ITEM_IOTA, - () -> new CapEntityIotaHolder.Wrapper(make.apply(entity))); - } - - private static SimpleProvider provide(Entity entity, BaseCapability capability, - Supplier supplier) { - return provide(entity::isRemoved, capability, supplier); - } - - private static SimpleProvider provide(BlockEntity be, BaseCapability capability, - Supplier supplier) { - return provide(be::isRemoved, capability, supplier); - } - - public static SimpleProvider provide(ItemStack stack, BaseCapability capability, - Supplier supplier) { - return provide(stack::isEmpty, capability, supplier); - } - - private static SimpleProvider provide(BooleanSupplier invalidated, BaseCapability capability, - Supplier supplier) { - return new SimpleProvider<>(invalidated, capability, Optional.of(supplier)); - } - - public static ICapabilityProvider makeProvider(BaseCapability cap, CAP instance) { - Optional> lazyInstanceButNotReally = Optional.of(() -> instance); - return new SimpleProvider<>(() -> false, cap, lazyInstanceButNotReally); - } - - public record SimpleProvider(BooleanSupplier invalidated, - BaseCapability capability, - Optional> instance) implements ICapabilityProvider { - - @NotNull - public Optional getCapability(@NotNull BaseCapability cap) { - if (invalidated.getAsBoolean()) { - return Optional.empty(); - } - - return cap == capability ? instance : Optional.empty(); - } - - @Override - public @Nullable Object getCapability(Object object, Object object2) { - return null; -======= for(Block block : BuiltInRegistries.BLOCK) { if(block instanceof BlockAbstractImpetus imBlock) { evt.registerBlockEntity( @@ -233,7 +103,6 @@ public Optional getCapability(@NotNull BaseCapability cap) { (be, dir) -> new ForgeImpetusCapability(be) ); } ->>>>>>> refs/remotes/slava/devel/port-1.21 } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java index 54b35b9440..7856cabc5c 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/HexCapabilities.java @@ -1,50 +1,13 @@ package at.petrak.hexcasting.forge.cap; import at.petrak.hexcasting.api.addldata.*; -<<<<<<< HEAD -import at.petrak.hexcasting.api.client.ClientCastingStack; -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.neoforged.neoforge.capabilities.EntityCapability; import net.neoforged.neoforge.capabilities.ItemCapability; import static at.petrak.hexcasting.api.HexAPI.modLoc; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public final class HexCapabilities { -<<<<<<< HEAD - public static final ItemCapability MEDIA = - ItemCapability.createVoid( - modLoc("item_media_holder"), - ADMediaHolder.class - ); - public static final EntityCapability MEDIA_ENTITY = - EntityCapability.createVoid( - modLoc("entity_media_holder"), - ADMediaHolder.class - ); - - public static final ItemCapability IOTA = ItemCapability.createVoid( - modLoc("item_iota_holder"), - ADIotaHolder.class - ); - public static final EntityCapability IOTA_ENTITY = EntityCapability.createVoid( - modLoc("entity_iota_holder"), - ADIotaHolder.class - ); - - public static final ItemCapability STORED_HEX = ItemCapability.createVoid( - modLoc("item_hex_holder"), - ADHexHolder.class - ); - - public static final ItemCapability COLOR = ItemCapability.createVoid( - modLoc("item_pigment"), - ADPigment.class - ); -======= public static final class Item { public static final ItemCapability MEDIA = ItemCapability.createVoid(modLoc("media_holder"), ADMediaHolder.class); public static final ItemCapability IOTA = ItemCapability.createVoid(modLoc("iota_holder"), ADIotaHolder.class); @@ -60,5 +23,4 @@ public static final class Entity { public static final EntityCapability VARIANT_ITEM = EntityCapability.createVoid(modLoc("variant"), ADVariantItem.class); public static final EntityCapability COLOR = EntityCapability.createVoid(modLoc("color"), ADPigment.class); } ->>>>>>> refs/remotes/slava/devel/port-1.21 } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java index fb02f98493..2d13ccb6d9 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/curios/CuriosApiInterop.java @@ -10,15 +10,11 @@ import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -<<<<<<< HEAD - -======= import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import top.theillusivec4.curios.api.CuriosCapability; import top.theillusivec4.curios.api.SlotContext; import top.theillusivec4.curios.api.type.capability.ICurio; ->>>>>>> refs/remotes/slava/devel/port-1.21 public class CuriosApiInterop { static class Wrapper implements ICurio { @@ -47,13 +43,6 @@ public Multimap, AttributeModifier> getAttributeModifiers(Slot } } -<<<<<<< HEAD - public static ICapabilityProvider curioCap(ItemStack stack) { - return ForgeCapabilityHandler.makeProvider(CuriosCapability.ITEM); - } - -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 public static void init() { DiscoveryHandlers.addDebugItemDiscoverer((player, type) -> { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java index 47ea0dad38..05030e991c 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/loot/ForgeHexAmethystLootMod.java @@ -39,8 +39,8 @@ public ForgeHexAmethystLootMod(LootItemCondition[] conditionsIn, double shardDel .lookupOrThrow(Registries.LOOT_TABLE) .getOrThrow(HexLootHandler.TABLE_INJECT_AMETHYST_CLUSTER) .value(); - //TODO check if should be raw with modifiers applied or not - injectPool.getRandomItems(context, generatedLoot::add); + //noinspection deprecation + injectPool.getRandomItemsRaw(context, generatedLoot::add); for (var stack : generatedLoot) { AmethystReducerFunc.doStatic(stack, context, this.shardDelta); diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java index 265b9db3f9..5245c0c3a0 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/ForgePacketHandler.java @@ -4,14 +4,8 @@ import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; -<<<<<<< HEAD -import net.neoforged.bus.api.SubscribeEvent; -import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent; -import net.neoforged.neoforge.network.handlers.ClientPayloadHandler; -======= import net.neoforged.bus.api.IEventBus; import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.neoforged.neoforge.network.handling.IPayloadHandler; import net.neoforged.neoforge.network.registration.PayloadRegistrar; import org.apache.logging.log4j.util.TriConsumer; @@ -20,31 +14,6 @@ public class ForgePacketHandler { -<<<<<<< HEAD - @SubscribeEvent - public static void register(RegisterPayloadHandlersEvent event) { - final PayloadRegistrar registrar = event.registrar("1"); - - // Client -> server - registrar.playToServer(MsgNewSpellPatternC2S.ID, MsgNewSpellPatternC2S.CODEC, makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); - registrar.playToServer(MsgShiftScrollC2S.ID, MsgShiftScrollC2S.CODEC, makeServerBoundHandler(MsgShiftScrollC2S::handle)); - - // Server -> client - registrar.playToClient(MsgNewSpellPatternS2C.ID, MsgNewSpellPatternS2C.CODEC, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - registrar.playToClient(MsgNewSpellPatternS2C.ID, MsgNewSpellPatternS2C.CODEC, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - registrar.playToClient(MsgBlinkS2C.ID, MsgBlinkS2C.CODEC, makeClientBoundHandler(MsgBlinkS2C::handle)); - registrar.playToClient(MsgSentinelStatusUpdateAck.ID, MsgSentinelStatusUpdateAck.CODEC, makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); - registrar.playToClient(MsgPigmentUpdateAck.ID, MsgPigmentUpdateAck.CODEC, makeClientBoundHandler(MsgPigmentUpdateAck::handle)); - registrar.playToClient(MsgAltioraUpdateAck.ID, MsgAltioraUpdateAck.CODEC, makeClientBoundHandler(MsgAltioraUpdateAck::handle)); - registrar.playToClient(MsgCastParticleS2C.ID, MsgCastParticleS2C.CODEC, makeClientBoundHandler(MsgCastParticleS2C::handle)); - registrar.playToClient(MsgOpenSpellGuiS2C.ID, MsgOpenSpellGuiS2C.CODEC, makeClientBoundHandler(MsgOpenSpellGuiS2C::handle)); - registrar.playToClient(MsgBeepS2C.ID, MsgBeepS2C.CODEC, makeClientBoundHandler(MsgBeepS2C::handle)); - registrar.playToClient(MsgBrainsweepAck.ID, MsgBrainsweepAck.CODEC, makeClientBoundHandler(MsgBrainsweepAck::handle)); - registrar.playToClient(MsgNewWallScrollS2C.ID, MsgNewWallScrollS2C.CODEC, makeClientBoundHandler(MsgNewWallScrollS2C::handle)); - registrar.playToClient(MsgRecalcWallScrollDisplayS2C.ID, MsgRecalcWallScrollDisplayS2C.CODEC, makeClientBoundHandler(MsgRecalcWallScrollDisplayS2C::handle)); - registrar.playToClient(MsgNewSpiralPatternsS2C.ID, MsgNewSpiralPatternsS2C.CODEC, makeClientBoundHandler(MsgNewSpiralPatternsS2C::handle)); - registrar.playToClient(MsgClearSpiralPatternsS2C.ID, MsgClearSpiralPatternsS2C.CODEC, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); -======= public static void init(IEventBus modBus) { modBus.addListener(RegisterPayloadHandlersEvent.class, ev -> { final PayloadRegistrar registar = ev.registrar("1"); @@ -83,7 +52,6 @@ public static void init(IEventBus modBus) { registar.playToClient(MsgClearSpiralPatternsS2C.TYPE, MsgClearSpiralPatternsS2C.STREAM_CODEC, makeClientBoundHandler(MsgClearSpiralPatternsS2C::handle)); }); ->>>>>>> refs/remotes/slava/devel/port-1.21 } private static IPayloadHandler makeServerBoundHandler( diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java index 144089ca68..b2a4d16189 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgAltioraUpdateAck.java @@ -4,51 +4,15 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.client.Minecraft; -<<<<<<< HEAD -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.codec.StreamCodec; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; ->>>>>>> refs/remotes/slava/devel/port-1.21 import org.jetbrains.annotations.Nullable; import java.util.Optional; public record MsgAltioraUpdateAck(@Nullable AltioraAbility altiora) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec( - MsgAltioraUpdateAck::serialize, - MsgAltioraUpdateAck::deserialize - ); - public static final Type ID = new Type<>(modLoc("altiora")); - - @Override - public Type type() { - return ID; - } - - public static MsgAltioraUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var extant = buf.readBoolean(); - if (!extant) { - return new MsgAltioraUpdateAck(null); - } - var grace = buf.readVarInt(); - return new MsgAltioraUpdateAck(new AltioraAbility(grace)); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeBoolean(this.altiora != null); - if (this.altiora != null) { - buf.writeVarInt(this.altiora.gracePeriod()); - } -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("altiora")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -62,15 +26,21 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } - public static void handle(MsgAltioraUpdateAck self) { - Minecraft.getInstance().execute(() -> { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setAltiora(player, self.altiora); - } - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgAltioraUpdateAck self) { + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setAltiora(player, self.altiora); + } + }); + } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java index 8981c8554c..8e2957a70e 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgBrainsweepAck.java @@ -1,56 +1,19 @@ package at.petrak.hexcasting.forge.network; -<<<<<<< HEAD -======= import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.msgs.IMessage; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.xplat.IXplatAbstractions; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; -import java.util.Optional; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; - /** * Sent server->client to synchronize the status of a brainswept mob. */ public record MsgBrainsweepAck(int target) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec( - MsgBrainsweepAck::serialize, - MsgBrainsweepAck::deserialize - ); - public static final Type ID = new Type<>(modLoc("sweep")); - - @Override - public Type type() { - return ID; - } - - public static MsgBrainsweepAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var target = buf.readInt(); - return new MsgBrainsweepAck(target); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeInt(target); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("sweep")); public static final StreamCodec STREAM_CODEC = ByteBufCodecs.INT.map( @@ -61,22 +24,28 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } public static MsgBrainsweepAck of(Entity target) { return new MsgBrainsweepAck(target.getId()); } - public static void handle(MsgBrainsweepAck msg) { - Minecraft.getInstance().execute(() -> { - var level = Minecraft.getInstance().level; - if (level != null) { - Entity entity = level.getEntity(msg.target()); - if (entity instanceof Mob living) { - IXplatAbstractions.INSTANCE.setBrainsweepAddlData(living); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgBrainsweepAck msg) { + Minecraft.getInstance().execute(() -> { + var level = Minecraft.getInstance().level; + if (level != null) { + Entity entity = level.getEntity(msg.target()); + if (entity instanceof Mob living) { + IXplatAbstractions.INSTANCE.setBrainsweepAddlData(living); + } } - } - }); + }); + } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java index 12d12f2990..134e0e00ce 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgPigmentUpdateAck.java @@ -2,49 +2,16 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.pigment.FrozenPigment; -<<<<<<< HEAD -======= -import at.petrak.hexcasting.common.msgs.IMessage; -import at.petrak.hexcasting.common.msgs.MsgBlinkS2C; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.xplat.IXplatAbstractions; -import at.petrak.paucal.api.PaucalCodecs; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent server->client to synchronize the status of the sentinel. */ public record MsgPigmentUpdateAck(FrozenPigment update) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec(MsgPigmentUpdateAck::serialize, MsgPigmentUpdateAck::deserialize); - - public static final Type ID = new Type<>(modLoc("color")); - - @Override - public Type type() { return ID; } - - public static MsgPigmentUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var tag = buf.readNbt(); - var colorizer = FrozenPigment.fromNBT(tag); - return new MsgPigmentUpdateAck(colorizer); - } - - public void serialize(FriendlyByteBuf buf) { - buf.writeNbt(this.update.serializeToNBT()); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("color")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -55,17 +22,21 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } - public static void handle(MsgPigmentUpdateAck self) { - Minecraft.getInstance().execute(() -> { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setPigment(player, self.update()); - } - }); + public void handle() { + Handler.handle(this); } + public static final class Handler { + public static void handle(MsgPigmentUpdateAck self) { + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setPigment(player, self.update()); + } + }); + } + } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java index 79484148fe..2a2afa156e 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/network/MsgSentinelStatusUpdateAck.java @@ -2,79 +2,20 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.player.Sentinel; -<<<<<<< HEAD -======= -import at.petrak.hexcasting.common.msgs.IMessage; -import at.petrak.hexcasting.common.msgs.MsgBlinkS2C; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.xplat.IXplatAbstractions; -import at.petrak.paucal.api.PaucalCodecs; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.core.registries.Registries; -import net.minecraft.network.FriendlyByteBuf; -<<<<<<< HEAD -======= import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.phys.Vec3; import javax.annotation.Nullable; - import java.util.Optional; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - /** * Sent server->client to synchronize the status of the sentinel. */ public record MsgSentinelStatusUpdateAck(@Nullable Sentinel update) implements CustomPacketPayload { -<<<<<<< HEAD - public static final StreamCodec CODEC = CustomPacketPayload.codec( - MsgSentinelStatusUpdateAck::serialize, - MsgSentinelStatusUpdateAck::deserialize - ); - public static final Type ID = new Type<>(modLoc("sntnl")); - - @Override - public Type type() { - return ID; - } - - public static MsgSentinelStatusUpdateAck deserialize(ByteBuf buffer) { - var buf = new FriendlyByteBuf(buffer); - - var exists = buf.readBoolean(); - if (!exists) { - return new MsgSentinelStatusUpdateAck(null); - } - - var greater = buf.readBoolean(); - var origin = new Vec3(buf.readDouble(), buf.readDouble(), buf.readDouble()); - var dimension = ResourceKey.create(Registries.DIMENSION, buf.readResourceLocation()); - - var sentinel = new Sentinel(greater, origin, dimension); - return new MsgSentinelStatusUpdateAck(sentinel); - } - - public void serialize(FriendlyByteBuf buf) { - if (update == null) { - buf.writeBoolean(false); - return; - } - - buf.writeBoolean(true); - buf.writeBoolean(update.extendsRange()); - buf.writeDouble(update.position().x); - buf.writeDouble(update.position().y); - buf.writeDouble(update.position().z); - buf.writeResourceLocation(update.dimension().location()); -======= public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("sntnl")); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( @@ -88,15 +29,21 @@ public void serialize(FriendlyByteBuf buf) { @Override public CustomPacketPayload.Type type() { return TYPE; ->>>>>>> refs/remotes/slava/devel/port-1.21 } - public static void handle(MsgSentinelStatusUpdateAck self) { - Minecraft.getInstance().execute(() -> { - var player = Minecraft.getInstance().player; - if (player != null) { - IXplatAbstractions.INSTANCE.setSentinel(player, self.update()); - } - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgSentinelStatusUpdateAck self) { + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + IXplatAbstractions.INSTANCE.setSentinel(player, self.update()); + } + }); + } } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java index 27edac485f..f0f77e1cce 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java @@ -30,9 +30,6 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class ForgeUnsealedIngredient implements ICustomIngredient { -<<<<<<< HEAD - public static final ResourceLocation ID = modLoc("unsealed"); -======= public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( ItemStack.CODEC.fieldOf("stack").forGetter(ForgeUnsealedIngredient::getStack) ).apply(inst, ForgeUnsealedIngredient::new)); @@ -40,7 +37,6 @@ public class ForgeUnsealedIngredient implements ICustomIngredient { ForgeUnsealedIngredient::of, ForgeUnsealedIngredient::getStack ); ->>>>>>> refs/remotes/slava/devel/port-1.21 private final ItemStack stack; @@ -82,11 +78,7 @@ public boolean test(@Nullable ItemStack input) { @Override public Stream getItems() { -<<<<<<< HEAD - return Stream.empty(); -======= return Stream.of(createStack(stack)); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -96,44 +88,6 @@ public boolean isSimple() { @Override public IngredientType getType() { -<<<<<<< HEAD - return null; - } - - @Override - public @NotNull IIngredientSerializer getSerializer() { - return ForgeUnsealedIngredient.Serializer.INSTANCE; - } - - @Override - public @NotNull JsonElement toJson() { - JsonObject json = new JsonObject(); - // TODO: should this be Partial or Strict - json.addProperty("type", Objects.toString(CraftingHelper.getID(PartialNBTIngredient.Serializer.INSTANCE))); - json.addProperty("item", Objects.toString(ForgeRegistries.ITEMS.getKey(stack.getItem()))); - return json; - } - - - public static class Serializer implements IIngredientSerializer { - public static final ForgeUnsealedIngredient.Serializer INSTANCE = new ForgeUnsealedIngredient.Serializer(); - - @Override - public @NotNull ForgeUnsealedIngredient parse(FriendlyByteBuf buffer) { - return new ForgeUnsealedIngredient(buffer.readItem()); - } - - @Override - public @NotNull ForgeUnsealedIngredient parse(@NotNull JsonObject json) { - return new ForgeUnsealedIngredient(CraftingHelper.getItemStack(json, true)); - } - - @Override - public void write(FriendlyByteBuf buffer, ForgeUnsealedIngredient ingredient) { - buffer.writeItem(ingredient.stack); - } -======= return ForgeHexIngredientTypes.UNSEALED_INGREDIENT.get(); ->>>>>>> refs/remotes/slava/devel/port-1.21 } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index c21c72222c..0419b3c49a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -1,12 +1,7 @@ package at.petrak.hexcasting.forge.xplat; import at.petrak.hexcasting.api.client.ClientCastingStack; -<<<<<<< HEAD -import at.petrak.hexcasting.forge.cap.HexCapabilities; -import at.petrak.hexcasting.forge.network.ForgePacketHandler; -======= import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.xplat.IClientXplatAbstractions; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.entity.EntityRendererProvider; @@ -27,11 +22,7 @@ public class ForgeClientXplatImpl implements IClientXplatAbstractions { @Override public void sendPacketToServer(CustomPacketPayload packet) { -<<<<<<< HEAD - ForgePacketHandler.getNetwork().sendToServer(packet); -======= PacketDistributor.sendToServer(packet); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -58,14 +49,7 @@ public void registerItemProperty(Item item, ResourceLocation id, ItemPropertyFun @Override public ClientCastingStack getClientCastingStack(Player player) { -<<<<<<< HEAD - var maybeCap = player.getCapability(HexCapabilities.CLIENT_CASTING_STACK); - if (maybeCap.isEmpty()) - return new ClientCastingStack(); // lie - return maybeCap.get().get(); -======= return player.getData(ForgeHexAttachments.CLIENT_CASTING_STACK); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index 6d01e208ad..9410eecac3 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -4,6 +4,7 @@ import at.petrak.hexcasting.api.addldata.ADHexHolder; import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.addldata.ADMediaHolder; +import at.petrak.hexcasting.api.addldata.ADVariantItem; import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.casting.arithmetic.Arithmetic; import at.petrak.hexcasting.api.casting.castables.SpecialHandler; @@ -22,21 +23,11 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; -<<<<<<< HEAD -import at.petrak.hexcasting.common.lib.hex.HexContinuationTypes; -import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import at.petrak.hexcasting.forge.cap.CapSyncers; -import at.petrak.hexcasting.forge.cap.HexCapabilities; -import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; -import at.petrak.hexcasting.forge.mixin.ForgeAccessorBuiltInRegistries; -======= import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; ->>>>>>> refs/remotes/slava/devel/port-1.21 import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; import at.petrak.hexcasting.interop.HexInterop; @@ -53,14 +44,9 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; -<<<<<<< HEAD -import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; -import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -======= import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; ->>>>>>> refs/remotes/slava/devel/port-1.21 import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; @@ -100,14 +86,9 @@ import net.neoforged.neoforge.fluids.FluidUtil; import net.neoforged.neoforge.fluids.capability.IFluidHandler; import net.neoforged.neoforge.network.PacketDistributor; -<<<<<<< HEAD -import org.jetbrains.annotations.Nullable; -import com.illusivesoulworks.caelus.api.CaelusApi; -======= import net.neoforged.neoforge.registries.DeferredRegister; import net.neoforged.neoforge.registries.RegistryBuilder; import org.jetbrains.annotations.Nullable; ->>>>>>> refs/remotes/slava/devel/port-1.21 import virtuoel.pehkui.api.ScaleTypes; import java.util.List; @@ -115,10 +96,6 @@ import java.util.function.BiFunction; import static at.petrak.hexcasting.api.HexAPI.modLoc; -<<<<<<< HEAD - -======= ->>>>>>> refs/remotes/slava/devel/port-1.21 public class ForgeXplatImpl implements IXplatAbstractions { @@ -159,11 +136,7 @@ public void setBrainsweepAddlData(Mob mob) { mob.getPersistentData().putBoolean(TAG_BRAINSWEPT, true); if (mob.level() instanceof ServerLevel) { -<<<<<<< HEAD - sendPacketTracking(mob, MsgBrainsweepAck.of(mob)); -======= PacketDistributor.sendToPlayersTrackingEntity(mob, MsgBrainsweepAck.of(mob)); ->>>>>>> refs/remotes/slava/devel/port-1.21 } } @@ -195,18 +168,11 @@ public void setAltiora(Player player, @Nullable AltioraAbility altiora) { } // The elytra ability is done with an event on fabric -<<<<<<< HEAD - var elytraing = CaelusApi.getInstance().getFallFlyingAttribute(); - var inst = player.getAttribute(elytraing); - if (altiora != null) { - if (inst.getModifier(ALTIORA_ATTRIBUTE_ID) == null) { -======= // TODO port: added null check, test if still works var elytraing = CaelusApi.getInstance().getFallFlyingAttribute(); var inst = player.getAttributes().getInstance(elytraing); if (altiora != null) { if (inst != null && !inst.hasModifier(ALTIORA_ATTRIBUTE_ID)) { ->>>>>>> refs/remotes/slava/devel/port-1.21 inst.addTransientModifier(new AttributeModifier(ALTIORA_ATTRIBUTE_ID, 1.0, AttributeModifier.Operation.ADD_VALUE)); } @@ -312,12 +278,7 @@ public Sentinel getSentinel(Player player) { } var extendsRange = tag.getBoolean(TAG_SENTINEL_GREATER); var position = HexUtils.vecFromNBT(tag.getCompound(TAG_SENTINEL_POSITION)); -<<<<<<< HEAD - var dimension = ResourceKey.create(Registries.DIMENSION, - ResourceLocation.parse(tag.getString(TAG_SENTINEL_DIMENSION))); -======= var dimension = ResourceKey.create(Registries.DIMENSION, ResourceLocation.parse(tag.getString(TAG_SENTINEL_DIMENSION))); ->>>>>>> refs/remotes/slava/devel/port-1.21 return new Sentinel(extendsRange, position, dimension); } @@ -343,43 +304,23 @@ public void clearCastingData(ServerPlayer player) { @Override public @Nullable ADMediaHolder findMediaHolder(ItemStack stack) { -<<<<<<< HEAD - return stack.getCapability(HexCapabilities.MEDIA); - } - - @Override - public @Nullable ADMediaHolder findMediaHolder(ServerPlayer player) { - return player.getCapability(HexCapabilities.MEDIA_ENTITY); -======= return stack.getCapability(HexCapabilities.Item.MEDIA); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override public @Nullable ADIotaHolder findDataHolder(ItemStack stack) { -<<<<<<< HEAD - return stack.getCapability(HexCapabilities.IOTA); -======= return stack.getCapability(HexCapabilities.Item.IOTA); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override public @Nullable ADIotaHolder findDataHolder(Entity entity) { -<<<<<<< HEAD - return entity.getCapability(HexCapabilities.IOTA_ENTITY); -======= return entity.getCapability(HexCapabilities.Entity.IOTA); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override public @Nullable ADHexHolder findHexHolder(ItemStack stack) { -<<<<<<< HEAD - return stack.getCapability(HexCapabilities.STORED_HEX); -======= return stack.getCapability(HexCapabilities.Item.STORED_HEX); } @@ -391,43 +332,10 @@ ADHexHolder findHexHolder(ItemStack stack) { @Override public boolean isPigment(ItemStack stack) { return stack.getCapability(HexCapabilities.Item.COLOR) != null; ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override public ColorProvider getColorProvider(FrozenPigment pigment) { -<<<<<<< HEAD - var maybePigment = pigment.item().getCapability(HexCapabilities.COLOR); - assert maybePigment != null; - return maybePigment.provideColor(pigment.owner()); - } - - @Override - public void sendPacketToPlayer(ServerPlayer target, CustomPacketPayload packet) { - target.connection.send(packet); - } - - @Override - public void sendPacketNear(Vec3 pos, double radius, ServerLevel dimension, CustomPacketPayload packet) { - List players = dimension.getPlayers((player) -> { - double r2 = radius * radius; - return player.level() == dimension && player.position().distanceToSqr(pos) <= r2; - }); - for (ServerPlayer player : players) { - player.connection.send(packet); - } - } - - @Override - public void sendPacketTracking(Entity entity, CustomPacketPayload packet) { - PacketDistributor.sendToPlayersTrackingEntity(entity, packet); - } - - @Override - public ClientboundCustomPayloadPacket toVanillaClientboundPacket(CustomPacketPayload message) { - //noinspection unchecked - return message.toVanillaClientbound(); -======= var adPigment = pigment.item().getCapability(HexCapabilities.Item.COLOR); return adPigment != null ? adPigment.provideColor(pigment.owner()) : ColorProvider.MISSING; } @@ -452,7 +360,6 @@ public Packet toVanillaClientboundPacket(CustomPacketP // TODO port: test cast //noinspection unchecked return (Packet) (Object) message.toVanillaClientbound(); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -491,12 +398,8 @@ public Ingredient getUnsealedIngredient(ItemStack stack) { @Override public boolean isCorrectTierForDrops(Tier tier, BlockState bs) { -<<<<<<< HEAD - return !bs.requiresCorrectToolForDrops(); -======= // TODO port: check tag return !bs.is(HexTags.Blocks.HEX_UNBREAKABLE); ->>>>>>> refs/remotes/slava/devel/port-1.21 } @Override @@ -671,11 +574,7 @@ public void setScale(Entity e, float scale) { public static final String TAG_ALTIORA_ALLOWED = "hexcasting:altiora_allowed"; public static final String TAG_ALTIORA_GRACE = "hexcasting:altiora_grace_period"; -<<<<<<< HEAD - public static final ResourceLocation ALTIORA_ATTRIBUTE_ID = modLoc("Altiora"); -======= public static final ResourceLocation ALTIORA_ATTRIBUTE_ID = modLoc("altiora"); ->>>>>>> refs/remotes/slava/devel/port-1.21 public static final String TAG_VM = "hexcasting:spell_harness"; public static final String TAG_PATTERNS = "hexcasting:spell_patterns"; diff --git a/gradle.properties b/gradle.properties index 637f71e108..1e8cc67195 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,7 +16,7 @@ fabric_loader_version=0.16.14 # this is the version published to modrinth/cf i swear # haha not anymore it's from mavenLocal -paucalVersion=0.7.2 +paucalVersion=0.7.1 patchouliVersion=88 accessoriesVersion=1.1.0-beta.16+1.21.1 diff --git a/settings.gradle b/settings.gradle index d8e8add79f..6f0bfae898 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,10 +1,10 @@ pluginManagement { repositories { gradlePluginPortal() -// maven { -// name = 'Fabric' -// url = 'https://maven.fabricmc.net/' -// } + maven { + name = 'Fabric' + url = 'https://maven.fabricmc.net/' + } maven { name = 'Sponge Snapshots' url = 'https://repo.spongepowered.org/repository/maven-public/' @@ -19,4 +19,4 @@ pluginManagement { } rootProject.name = 'Hex Casting' -include("Common", /*"Fabric",*/ "Neoforge") +include("Common", "Fabric", "Neoforge") From 93a695a830fb5a10b958c1ba71676249efc98e2f Mon Sep 17 00:00:00 2001 From: penguinencounter <49845522+penguinencounter@users.noreply.github.com> Date: Fri, 28 Nov 2025 14:47:55 -0800 Subject: [PATCH 12/51] that's. that's not how remapping works --- Neoforge/build.gradle | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index beb61e477f..897b343019 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -130,16 +130,6 @@ loom { // config "hexcasting_forge.mixins.json" //} -compileJava { - source(project(":Common").sourceSets.main.allSource) -} -compileKotlin { - source(project(":Common").sourceSets.main.kotlin) -} -compileTestKotlin { - source(project(":Common").sourceSets.main.kotlin) -} - sourceSets { main.resources.srcDirs += ['src/generated/resources', '../Common/src/generated/resources'] main.kotlin.srcDirs += 'src/main/java' @@ -162,6 +152,7 @@ shadowJar { remapJar { inputFile.set shadowJar.archiveFile + dependsOn shadowJar } jar.finalizedBy('remapJar') \ No newline at end of file From 254917c2b690460ce093be9a3ed05eb2406d175f Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Fri, 28 Nov 2025 18:07:35 -0600 Subject: [PATCH 13/51] * Mod finally builds, but fails to launch client --- .../hexcasting/xplat/IXplatAbstractions.java | 1 + Fabric/build.gradle | 8 ++++++-- Fabric/gradle.properties | 5 ++++- .../fabric/interop/emi/EmiPhialRecipe.java | 5 +++-- Fabric/src/main/resources/fabric.mod.json | 18 +++++++++--------- gradle.properties | 4 ++-- 6 files changed, 25 insertions(+), 16 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index ac097a5095..369b764743 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -59,6 +59,7 @@ /** * more like IHexplatAbstracts lmaooooooo */ + public interface IXplatAbstractions { Platform platform(); diff --git a/Fabric/build.gradle b/Fabric/build.gradle index efa2d2a64b..0d8b112493 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -123,7 +123,7 @@ dependencies { modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" // dear mod devs, don't put the platform in the middle of your version code modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-FABRIC-SNAPSHOT" -// modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" + modImplementation "com.samsthenerd.inline:inline-common:$minecraftVersion-$inlineVersion" modImplementation "io.wispforest:accessories-fabric:$accessoriesVersion" modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-base:$cardinalComponentsVersion" @@ -145,6 +145,9 @@ dependencies { modCompileOnly "dev.emi:emi-fabric:${emiVersion}:api" modLocalRuntime "dev.emi:emi-fabric:${emiVersion}" + modRuntimeOnly "dev.architectury:architectury-fabric:$architecturyVersion" + modRuntimeOnly "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" + // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}", { exclude group: "net.fabricmc.fabric-api" @@ -158,9 +161,10 @@ dependencies { // i am speed // sodium is causing frustum mixin errors so don't use it // modImplementation "maven.modrinth:sodium:${sodiumVersion}" - modImplementation "maven.modrinth:lithium:${lithiumVersion}" + modImplementation "maven.modrinth:lithium:${lithiumVersion}-fabric" // modImplementation "maven.modrinth:phosphor:${phosphorVersion}" + // === OTHER STUFF === compileOnly "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" testCompileOnly "org.jetbrains:annotations:$jetbrainsAnnotationsVersion" diff --git a/Fabric/gradle.properties b/Fabric/gradle.properties index 537818eaf2..175d2d07c7 100644 --- a/Fabric/gradle.properties +++ b/Fabric/gradle.properties @@ -16,5 +16,8 @@ modmenuVersion=7.0.1 # Optimizations sodiumVersion=mc1.20-0.4.10+build.27 -lithiumVersion=mc1.20.1-0.11.2 +lithiumVersion=mc1.21.1-0.15.1 #phosphorVersion=mc1.19.x-0.8.1 + +# Runtime only +architecturyVersion=13.0.2 diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java index 2e74629169..e3a2bfde60 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.interop.utils.PhialRecipeStackBuilder; -import dev.emi.emi.EmiUtil; import dev.emi.emi.api.recipe.EmiRecipe; import dev.emi.emi.api.recipe.EmiRecipeCategory; import dev.emi.emi.api.stack.EmiIngredient; @@ -12,6 +11,8 @@ import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.Random; +import java.util.concurrent.ThreadLocalRandom; import java.util.stream.Collectors; import static at.petrak.hexcasting.api.HexAPI.modLoc; @@ -23,7 +24,7 @@ public class EmiPhialRecipe implements EmiRecipe { private final EmiIngredient bottle; private final EmiIngredient outputs; - private final int uniq = EmiUtil.RANDOM.nextInt(); + private final int uniq = ThreadLocalRandom.current().nextInt(); public EmiPhialRecipe() { var stacks = PhialRecipeStackBuilder.createStacks(); diff --git a/Fabric/src/main/resources/fabric.mod.json b/Fabric/src/main/resources/fabric.mod.json index 85a8965ace..de6446c006 100644 --- a/Fabric/src/main/resources/fabric.mod.json +++ b/Fabric/src/main/resources/fabric.mod.json @@ -46,19 +46,19 @@ ], "accessWidener": "fabricasting.accesswidener", "depends": { - "minecraft": "=1.20.1", - "java": ">=17", + "minecraft": "=1.21.1", + "java": ">=21", "fabricloader": ">=0.14", "fabric": ">=0.84", "fabric-language-kotlin": ">=1.9.4+kotlin.1.8.21", - "cardinal-components-base": "~5.2.1", - "cardinal-components-entity": "~5.2.1", - "cardinal-components-item": "~5.2.1", - "cardinal-components-block": "~5.2.1", - "paucal": ">=0.6.0-pre <0.7.0", - "cloth-config": "11.1.*", + "cardinal-components-base": "~6.1.3", + "cardinal-components-entity": "~6.1.3", + "cardinal-components-item": "~6.1.3", + "cardinal-components-block": "~6.1.3", + "paucal": ">0.7.0", + "cloth-config": "15.0.*", "patchouli": ">=1.20.1-80", - "inline": ">=1.20.1-1.0.1" + "inline": ">=1.21.1-1.2.2" }, "suggests": { "pehkui": ">=3.7.6", diff --git a/gradle.properties b/gradle.properties index 1e8cc67195..55a759d4ca 100644 --- a/gradle.properties +++ b/gradle.properties @@ -24,5 +24,5 @@ emiVersion=1.1.18+1.21.1 pehkuiVersion=3.8.3 -inlineVersion=1.0.1 -clothConfigVersion=11.1.106 \ No newline at end of file +inlineVersion=1.2.2-74 +clothConfigVersion=15.0.140 \ No newline at end of file From caea11d01c74eb59325bdd6b153d859600924b99 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Fri, 28 Nov 2025 22:23:46 -0600 Subject: [PATCH 14/51] * Replaced serialization-hooks with Fabric API's CustomIngredient system --- Fabric/build.gradle | 10 -- .../hexcasting/fabric/FabricHexInitializer.kt | 1 - .../FabricModConditionalIngredient.java | 95 +++++++++++-------- .../recipe/FabricUnsealedIngredient.java | 70 +++++++++----- 4 files changed, 104 insertions(+), 72 deletions(-) diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 0d8b112493..f48299c9dc 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -132,9 +132,6 @@ dependencies { modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-item:$cardinalComponentsVersion" modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-block:$cardinalComponentsVersion" - // apparently the 1.18 version Just Works on 1.19 - modImplementation "io.github.tropheusj:serialization-hooks:$serializationHooksVersion" - include "io.github.tropheusj:serialization-hooks:$serializationHooksVersion" include(implementation(annotationProcessor("io.github.llamalad7:mixinextras-fabric:0.5.0"))) // === OPTIONAL DEPS === @@ -172,13 +169,6 @@ dependencies { implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.1' } -tasks.withType(JavaCompile) { - source(project(":Common").sourceSets.main.allSource) -} -compileKotlin { - source(project(":Common").sourceSets.main.kotlin) -} - sourcesJar { from project(":Common").sourceSets.main.allJava } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index a5d5735620..a24786ec4c 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -30,7 +30,6 @@ import at.petrak.hexcasting.fabric.network.FabricPacketHandler import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions -import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer import net.fabricmc.api.ModInitializer import net.fabricmc.fabric.api.command.v2.ArgumentTypeRegistry import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java index 4531837c05..549e4880b5 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java @@ -4,24 +4,30 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; +import com.mojang.serialization.Codec; import com.mojang.serialization.JsonOps; -import io.github.tropheusj.serialization_hooks.ingredient.BaseCustomIngredient; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; +import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; +import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; -import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; + import java.util.Arrays; -import java.util.Objects; +import java.util.List; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public class FabricModConditionalIngredient extends BaseCustomIngredient { +public class FabricModConditionalIngredient extends Ingredient implements CustomIngredient { public static final ResourceLocation ID = modLoc("mod_conditional"); private final Ingredient main; @@ -30,8 +36,21 @@ public class FabricModConditionalIngredient extends BaseCustomIngredient { private final Ingredient toUse; + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + Ingredient.CODEC.fieldOf("main").forGetter(FabricModConditionalIngredient::getMain), + Codec.STRING.fieldOf("modid").forGetter(FabricModConditionalIngredient::getModid), + Ingredient.CODEC.fieldOf("ifModLoaded").forGetter(FabricModConditionalIngredient::getIfModLoaded) + ).apply(instance, FabricModConditionalIngredient::new)); + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + Ingredient.CONTENTS_STREAM_CODEC, FabricModConditionalIngredient::getMain, + ByteBufCodecs.STRING_UTF8, FabricModConditionalIngredient::getModid, + Ingredient.CONTENTS_STREAM_CODEC, FabricModConditionalIngredient::getIfModLoaded, + FabricModConditionalIngredient::new + ); + protected FabricModConditionalIngredient(Ingredient main, String modid, Ingredient ifModLoaded) { - super(IXplatAbstractions.INSTANCE.isModPresent(modid) ? Arrays.stream(ifModLoaded.values) : Arrays.stream(main.values)); + super(Arrays.stream((IXplatAbstractions.INSTANCE.isModPresent(modid) ? ifModLoaded : main).values)); this.main = main; this.modid = modid; this.ifModLoaded = ifModLoaded; @@ -50,50 +69,52 @@ public boolean test(@Nullable ItemStack input) { } @Override - public IngredientDeserializer getDeserializer() { - return Deserializer.INSTANCE; + public List getMatchingStacks() { + return List.of(); + } + + @Override + public boolean requiresTesting() { + return false; } - public static Ingredient fromNetwork(FriendlyByteBuf friendlyByteBuf) { - return Ingredient.CONTENTS_STREAM_CODEC.decode((RegistryFriendlyByteBuf) friendlyByteBuf); // Just send the actual ingredient + public Ingredient getMain() { + return main; } - public static Ingredient fromJson(JsonElement element) { - if (element == null || element.isJsonNull() || !element.isJsonObject()) - return null; - - JsonObject object = element.getAsJsonObject(); - - if (object.has("type") && object.getAsJsonPrimitive("type").getAsString().equals(ID.toString())) { - if (object.has("modid") && IXplatAbstractions.INSTANCE.isModPresent(object.getAsJsonPrimitive("modid").getAsString())) { - try { - Ingredient ingredient = Ingredient.CODEC.decode(JsonOps.INSTANCE, object.get("if_loaded")).getOrThrow().getFirst(); - if (!ingredient.isEmpty()) { - return ingredient; - } - } catch (JsonParseException e) { - // NO-OP - } - } - - return Ingredient.CODEC.decode(JsonOps.INSTANCE, object.get("default")).getOrThrow().getFirst(); - } + public Ingredient getToUse() { + return toUse; + } - return null; + public Ingredient getIfModLoaded() { + return ifModLoaded; } - public static class Deserializer implements IngredientDeserializer { - public static final Deserializer INSTANCE = new Deserializer(); + public String getModid() { + return modid; + } + + @Override + public CustomIngredientSerializer getSerializer() { + return Serializer.INSTANCE; + } + + public static class Serializer implements CustomIngredientSerializer { + public static final Serializer INSTANCE = new Serializer(); + + @Override + public ResourceLocation getIdentifier() { + return FabricModConditionalIngredient.ID; + } @Override - public Ingredient fromNetwork(FriendlyByteBuf buffer) { - return FabricModConditionalIngredient.fromNetwork(buffer); + public MapCodec getCodec(boolean b) { + return CODEC; } - @Nullable @Override - public Ingredient fromJson(JsonObject object) { - return FabricModConditionalIngredient.fromJson(object); + public StreamCodec getPacketCodec() { + return STREAM_CODEC; } } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java index 35dc97a4ad..4339aaed43 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java @@ -4,14 +4,20 @@ import at.petrak.hexcasting.api.utils.NBTHelper; import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.mojang.serialization.Codec; import com.mojang.serialization.JsonOps; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; import io.github.tropheusj.serialization_hooks.ingredient.BaseCustomIngredient; import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; +import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; +import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.component.CustomData; @@ -21,16 +27,28 @@ import javax.annotation.Nullable; import javax.xml.crypto.Data; +import java.util.Arrays; +import java.util.List; import java.util.Objects; import java.util.stream.Stream; import static at.petrak.hexcasting.api.HexAPI.modLoc; -public class FabricUnsealedIngredient extends BaseCustomIngredient { +public class FabricUnsealedIngredient extends Ingredient implements CustomIngredient { public static final ResourceLocation ID = modLoc("unsealed"); private final ItemStack stack; + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + ItemStack.CODEC.fieldOf("item").forGetter(FabricUnsealedIngredient::getStack) + ).apply(instance, FabricUnsealedIngredient::new)); + + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ResourceLocation.STREAM_CODEC, FabricUnsealedIngredient::getId, + ItemStack.STREAM_CODEC, FabricUnsealedIngredient::getStack, + (a, b) -> new FabricUnsealedIngredient(b) + ); + private static ItemStack createStack(ItemStack base) { ItemStack newStack = base.copy(); CompoundTag tag = newStack.get(DataComponents.CUSTOM_DATA).copyTag(); @@ -40,10 +58,18 @@ private static ItemStack createStack(ItemStack base) { } protected FabricUnsealedIngredient(ItemStack stack) { - super(Stream.of(new Ingredient.ItemValue(createStack(stack)))); + super(Arrays.stream(Ingredient.of(stack).values)); this.stack = stack; } + public ItemStack getStack() { + return stack; + } + + public ResourceLocation getId() { + return ID; + } + /** * Creates a new ingredient matching the given stack */ @@ -61,40 +87,36 @@ public boolean test(@Nullable ItemStack input) { } @Override - public IngredientDeserializer getDeserializer() { - return Deserializer.INSTANCE; + public List getMatchingStacks() { + return List.of(stack); } - public static Ingredient fromNetwork(RegistryFriendlyByteBuf friendlyByteBuf) { - return new FabricUnsealedIngredient(ItemStack.STREAM_CODEC.decode(friendlyByteBuf)); + @Override + public boolean requiresTesting() { + return false; } - public static Ingredient fromJson(JsonElement element) { - if (element == null || element.isJsonNull() || !element.isJsonObject()) { - return null; - } + @Override + public CustomIngredientSerializer getSerializer() { + return Serializer.INSTANCE; + } - JsonObject object = element.getAsJsonObject(); + public static class Serializer implements CustomIngredientSerializer { + public static final Serializer INSTANCE = new Serializer(); - if (object.has("type") && object.getAsJsonPrimitive("type").getAsString().equals(ID.toString())) { - return new FabricUnsealedIngredient(ItemStack.CODEC.parse(JsonOps.INSTANCE, object).getOrThrow()); + @Override + public ResourceLocation getIdentifier() { + return FabricUnsealedIngredient.ID; } - return null; - } - - public static class Deserializer implements IngredientDeserializer { - public static final Deserializer INSTANCE = new Deserializer(); - @Override - public Ingredient fromNetwork(FriendlyByteBuf buffer) { - return FabricUnsealedIngredient.fromNetwork((RegistryFriendlyByteBuf) buffer); + public MapCodec getCodec(boolean b) { + return CODEC; } - @Nullable @Override - public Ingredient fromJson(JsonObject object) { - return FabricUnsealedIngredient.fromJson(object); + public StreamCodec getPacketCodec() { + return STREAM_CODEC; } } } From 63ef2cd27c7009580baffe17a2e8c45ef95cd0ca Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Fri, 28 Nov 2025 22:25:23 -0600 Subject: [PATCH 15/51] * Forgot to remove traces of serialization-hooks --- .../fabric/recipe/FabricModConditionalIngredient.java | 1 - .../hexcasting/fabric/recipe/FabricUnsealedIngredient.java | 2 -- 2 files changed, 3 deletions(-) diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java index 549e4880b5..1785b26f45 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java @@ -8,7 +8,6 @@ import com.mojang.serialization.JsonOps; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; import net.minecraft.network.FriendlyByteBuf; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java index 4339aaed43..107e369a21 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java @@ -8,8 +8,6 @@ import com.mojang.serialization.JsonOps; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import io.github.tropheusj.serialization_hooks.ingredient.BaseCustomIngredient; -import io.github.tropheusj.serialization_hooks.ingredient.IngredientDeserializer; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; import net.minecraft.core.component.DataComponents; From facfe82fc74ae537470350e0477a853730003be7 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Fri, 28 Nov 2025 23:31:46 -0600 Subject: [PATCH 16/51] * New FabricRegister for Registries --- .../hexcasting/fabric/FabricHexInitializer.kt | 5 ++ .../fabric/xplat/FabricRegister.java | 57 +++++++++++++++++++ .../fabric/xplat/FabricXplatImpl.java | 4 +- 3 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index a24786ec4c..fe468d9436 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -27,6 +27,8 @@ import at.petrak.hexcasting.fabric.cc.adimpl.CCMediaHolder import at.petrak.hexcasting.fabric.event.VillagerConversionCallback import at.petrak.hexcasting.fabric.loot.FabricHexLootModJankery import at.petrak.hexcasting.fabric.network.FabricPacketHandler +import at.petrak.hexcasting.fabric.recipe.FabricModConditionalIngredient +import at.petrak.hexcasting.fabric.recipe.FabricUnsealedIngredient import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions @@ -41,6 +43,7 @@ import net.fabricmc.fabric.api.event.player.UseEntityCallback import net.fabricmc.fabric.api.item.v1.DefaultItemComponentEvents import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents import net.fabricmc.fabric.api.loot.v3.LootTableEvents +import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer import net.fabricmc.fabric.api.registry.FlammableBlockRegistry import net.minecraft.commands.synchronization.SingletonArgumentInfo import net.minecraft.core.Registry @@ -133,6 +136,8 @@ object FabricHexInitializer : ModInitializer { HexBlockEntities.registerTiles(bind(BuiltInRegistries.BLOCK_ENTITY_TYPE)) HexItems.registerItems(bind(BuiltInRegistries.ITEM)) // Registry.register(IngredientDeserializer.REGISTRY, FabricModConditionalIngredient.ID, FabricModConditionalIngredient.Deserializer.INSTANCE) + CustomIngredientSerializer.register(FabricUnsealedIngredient.Serializer.INSTANCE); + CustomIngredientSerializer.register(FabricModConditionalIngredient.Serializer.INSTANCE); HexEntities.registerEntities(bind(BuiltInRegistries.ENTITY_TYPE)) HexAttributes.register() diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java new file mode 100644 index 0000000000..a234928246 --- /dev/null +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java @@ -0,0 +1,57 @@ +package at.petrak.hexcasting.fabric.xplat; + +import at.petrak.hexcasting.xplat.IXplatRegister; +import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder; +import net.minecraft.core.Holder; +import net.minecraft.core.MappedRegistry; +import net.minecraft.core.RegistrationInfo; +import net.minecraft.resources.ResourceKey; + +import java.util.HashMap; +import java.util.Map; +import java.util.function.Supplier; + +import static at.petrak.hexcasting.api.HexAPI.modLoc; + +public class FabricRegister implements IXplatRegister { + private final MappedRegistry register; + private final Map map; + + public FabricRegister(MappedRegistry register) { + this.register = register; + this.map = new HashMap<>(); + } + + public FabricRegister(MappedRegistry register, Map map) { + this.register = register; + this.map = map; + } + + @Override + public Supplier register(String id, Supplier provider) { + var key = ResourceKey.create( + register.key(), + modLoc(id) + ); + var value = provider.get(); + var info = RegistrationInfo.BUILT_IN; + register.register(key, value, info); + return provider; + } + + @Override + public Holder registerHolder(String id, Supplier provider) { + map.put(id, provider.get()); + return register.wrapAsHolder(provider.get()); + } + + @Override + public void registerAll() { + map.forEach((string, provider) -> + register.register( + ResourceKey.create( + register.key(), modLoc(string) + ), provider, RegistrationInfo.BUILT_IN) + ); + } +} diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index 26623ae378..47edc89a98 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -53,6 +53,8 @@ import net.fabricmc.loader.api.ModContainer; import net.minecraft.advancements.critereon.ItemPredicate; import net.minecraft.core.*; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -521,7 +523,7 @@ public boolean isPlacingAllowed(ServerLevel world, BlockPos pos, ItemStack block @Override public IXplatRegister createRegistar(ResourceKey> registryKey) { - return null; + return new FabricRegister<>(FabricRegistryBuilder.createSimple(registryKey).buildAndRegister()); } private static PehkuiInterop.ApiAbstraction PEHKUI_API = null; From 96fe119bb2459eaa267f5c432a5642166ac12283 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Sat, 29 Nov 2025 12:55:20 -0600 Subject: [PATCH 17/51] * Attempted fix for Fabric Packet handling --- Fabric/build.gradle | 1 + .../hexcasting/fabric/FabricHexInitializer.kt | 1 + .../fabric/network/FabricPacketHandler.java | 22 ++++++++++++++++--- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Fabric/build.gradle b/Fabric/build.gradle index f48299c9dc..870c7fa20c 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -144,6 +144,7 @@ dependencies { modRuntimeOnly "dev.architectury:architectury-fabric:$architecturyVersion" modRuntimeOnly "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" + modImplementation "blue.endless:jankson:1.2.2" // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}", { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index fe468d9436..6d0c4a0b5b 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -60,6 +60,7 @@ object FabricHexInitializer : ModInitializer { override fun onInitialize() { this.CONFIG = FabricHexConfig.setup() + FabricPacketHandler.initPackets() FabricPacketHandler.init() initListeners() diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java index b21e65af46..c6ded2f815 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.common.msgs.*; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; @@ -14,11 +15,26 @@ import java.util.function.Function; public class FabricPacketHandler { + public static void initPackets() { + PayloadTypeRegistry.playC2S().register(MsgShiftScrollC2S.TYPE, MsgShiftScrollC2S.STREAM_CODEC); + PayloadTypeRegistry.playC2S().register(MsgNewSpellPatternC2S.TYPE, MsgNewSpellPatternC2S.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgNewSpellPatternS2C.TYPE, MsgNewSpellPatternS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgOpenSpellGuiS2C.TYPE, MsgOpenSpellGuiS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgBeepS2C.TYPE, MsgBeepS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgShiftScrollC2S.TYPE, MsgShiftScrollC2S.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgCastParticleS2C.TYPE, MsgCastParticleS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgBlinkS2C.TYPE, MsgBlinkS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgClearSpiralPatternsS2C.TYPE, MsgClearSpiralPatternsS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgNewWallScrollS2C.TYPE, MsgNewWallScrollS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgRecalcWallScrollDisplayS2C.TYPE, MsgRecalcWallScrollDisplayS2C.STREAM_CODEC); + PayloadTypeRegistry.playS2C().register(MsgNewSpiralPatternsS2C.TYPE, MsgNewSpiralPatternsS2C.STREAM_CODEC); + } + public static void init() { + ServerPlayNetworking.registerGlobalReceiver(MsgShiftScrollC2S.TYPE, + makeServerBoundHandler(MsgShiftScrollC2S::handle)); ServerPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternC2S.TYPE, - makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); - ServerPlayNetworking.registerGlobalReceiver( - MsgShiftScrollC2S.TYPE, makeServerBoundHandler(MsgShiftScrollC2S::handle)); + makeServerBoundHandler(MsgNewSpellPatternC2S::handle)); } private static ServerPlayNetworking.PlayPayloadHandler makeServerBoundHandler( From f60841f4eb98ca49970c2cef9e048e443d0e1a8c Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Sat, 29 Nov 2025 17:27:20 -0600 Subject: [PATCH 18/51] * Updated loom and fixed Fabric building. --- Common/build.gradle | 4 ++-- Common/src/main/resources/hexplat.mixins.json | 2 +- Fabric/build.gradle | 17 +++++++++++++++-- build.gradle | 2 +- 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Common/build.gradle b/Common/build.gradle index b3876cdbef..a5c91e1913 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -1,5 +1,5 @@ architectury { - common([/*"fabric", */"neoforge"]) + common(["fabric", "neoforge"]) } loom { @@ -78,4 +78,4 @@ processResources { } // it wants a task by this name to exist for some reason -task("prepareWorkspace") {} +tasks.register('prepareWorkspace') {} diff --git a/Common/src/main/resources/hexplat.mixins.json b/Common/src/main/resources/hexplat.mixins.json index 39a6da0bd1..9c6121aa10 100644 --- a/Common/src/main/resources/hexplat.mixins.json +++ b/Common/src/main/resources/hexplat.mixins.json @@ -1,7 +1,7 @@ { "minVersion": "0.8", "required": true, - "compatibilityLevel": "JAVA_17", + "compatibilityLevel": "JAVA_21", "refmap": "hexcasting.mixins.refmap.json", "package": "at.petrak.hexcasting.mixin", "mixins": [ diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 870c7fa20c..194f932355 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -1,5 +1,6 @@ plugins { // id 'fabric-loom' version "1.8.9" + id 'com.gradleup.shadow' } architectury { @@ -123,7 +124,7 @@ dependencies { modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" // dear mod devs, don't put the platform in the middle of your version code modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-FABRIC-SNAPSHOT" - modImplementation "com.samsthenerd.inline:inline-common:$minecraftVersion-$inlineVersion" + modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" modImplementation "io.wispforest:accessories-fabric:$accessoriesVersion" modImplementation "org.ladysnake.cardinal-components-api:cardinal-components-base:$cardinalComponentsVersion" @@ -144,7 +145,7 @@ dependencies { modRuntimeOnly "dev.architectury:architectury-fabric:$architecturyVersion" modRuntimeOnly "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" - modImplementation "blue.endless:jankson:1.2.2" + modRuntimeOnly "blue.endless:jankson:1.2.2" // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}", { @@ -186,3 +187,15 @@ processResources { expand "version": project.version } } + +shadowJar { + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' +} + +remapJar { + inputFile.set shadowJar.archiveFile + dependsOn shadowJar +} + +jar.finalizedBy(remapJar) \ No newline at end of file diff --git a/build.gradle b/build.gradle index a8536a763f..627274291d 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { // used for something?? - id 'dev.architectury.loom' version '1.10-SNAPSHOT' apply false + id 'dev.architectury.loom' version '1.13-SNAPSHOT' apply false // used for multi-loader stuff, NOT for the archi API id 'architectury-plugin' version '3.4-SNAPSHOT' id 'com.gradleup.shadow' version '8.3.6' apply false From 60bafd6a8397b64cc4b3fa2780a1f618bc70dabb Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Sun, 30 Nov 2025 12:37:35 -0600 Subject: [PATCH 19/51] * Changed some files and mixins :help: --- .../loot_table/grant_patchi_book.json | 6 +++-- .../data/hexcasting/recipe/patchi_book.json | 9 +++++-- Fabric/build.gradle | 3 ++- Fabric/gradle.properties | 3 +-- .../hexcasting/fabric/FabricHexInitializer.kt | 26 +++++++++++++++++-- .../fabric/mixin/FabricClipContextMixin.java | 4 +-- .../FabricMixinReloadableServerResources.java | 21 --------------- .../mixin/client/FabricModelManagerMixin.java | 16 +++++------- .../main/resources/fabricasting.mixins.json | 1 - Neoforge/build.gradle | 3 +++ .../resources/META-INF/neoforge.mods.toml | 12 ++++----- gradle.properties | 5 +++- 12 files changed, 60 insertions(+), 49 deletions(-) delete mode 100644 Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java diff --git a/Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json b/Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json index a154e45b43..121f1d8144 100644 --- a/Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json +++ b/Common/src/main/resources/data/hexcasting/loot_table/grant_patchi_book.json @@ -9,8 +9,10 @@ "name": "patchouli:guide_book", "functions": [ { - "function": "set_nbt", - "tag": "{\"patchouli:book\": \"hexcasting:thehexbook\"}" + "function": "set_components", + "components": { + "patchouli:book": "hexcasting:thehexbook" + } } ] } diff --git a/Common/src/main/resources/data/hexcasting/recipe/patchi_book.json b/Common/src/main/resources/data/hexcasting/recipe/patchi_book.json index 7847622d3a..2881ee9001 100644 --- a/Common/src/main/resources/data/hexcasting/recipe/patchi_book.json +++ b/Common/src/main/resources/data/hexcasting/recipe/patchi_book.json @@ -1,5 +1,5 @@ { - "type": "patchouli:shapeless_book_recipe", + "type": "minecraft:crafting_shapeless", "ingredients": [ { "item": "minecraft:book" @@ -8,5 +8,10 @@ "item": "hexcasting:amethyst_dust" } ], - "book": "hexcasting:thehexbook" + "result": { + "components": { + "patchouli:book": "hexcasting:thehexbook" + }, + "id": "patchouli:guide_book" + } } \ No newline at end of file diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 194f932355..4089d3c8e4 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -145,7 +145,8 @@ dependencies { modRuntimeOnly "dev.architectury:architectury-fabric:$architecturyVersion" modRuntimeOnly "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" - modRuntimeOnly "blue.endless:jankson:1.2.2" + include(implementation("blue.endless:jankson:1.2.2")) + // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}", { diff --git a/Fabric/gradle.properties b/Fabric/gradle.properties index 175d2d07c7..1b64bee077 100644 --- a/Fabric/gradle.properties +++ b/Fabric/gradle.properties @@ -19,5 +19,4 @@ sodiumVersion=mc1.20-0.4.10+build.27 lithiumVersion=mc1.21.1-0.15.1 #phosphorVersion=mc1.19.x-0.8.1 -# Runtime only -architecturyVersion=13.0.2 + diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 6d0c4a0b5b..6eebc918c4 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -12,6 +12,7 @@ import at.petrak.hexcasting.common.blocks.behavior.HexStrippables import at.petrak.hexcasting.common.casting.PatternRegistryManifest import at.petrak.hexcasting.common.casting.actions.spells.OpFlight import at.petrak.hexcasting.common.casting.actions.spells.great.OpAltiora +import at.petrak.hexcasting.common.command.PatternResKeyArgument import at.petrak.hexcasting.common.command.PatternResLocArgument import at.petrak.hexcasting.common.entities.HexEntities import at.petrak.hexcasting.common.items.ItemJewelerHammer @@ -45,14 +46,27 @@ import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents import net.fabricmc.fabric.api.loot.v3.LootTableEvents import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer import net.fabricmc.fabric.api.registry.FlammableBlockRegistry +import net.minecraft.advancements.critereon.ItemPredicate import net.minecraft.commands.synchronization.SingletonArgumentInfo import net.minecraft.core.Registry import net.minecraft.core.registries.BuiltInRegistries +import net.minecraft.core.registries.Registries import net.minecraft.resources.ResourceLocation +import net.minecraft.tags.ItemTags import net.minecraft.world.InteractionResult import net.minecraft.world.entity.player.Player import net.minecraft.world.item.Items +import net.minecraft.world.item.enchantment.Enchantments +import net.minecraft.world.level.block.Blocks import net.minecraft.world.level.block.state.properties.BlockSetType +import net.minecraft.world.level.storage.loot.LootPool +import net.minecraft.world.level.storage.loot.entries.LootItem +import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount +import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction +import net.minecraft.world.level.storage.loot.predicates.MatchTool +import net.minecraft.world.level.storage.loot.providers.number.ConstantValue +import net.minecraft.world.level.storage.loot.providers.number.LootNumberProviderType +import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator import java.util.function.BiConsumer object FabricHexInitializer : ModInitializer { @@ -69,14 +83,22 @@ object FabricHexInitializer : ModInitializer { ArgumentTypeRegistry.registerArgumentType( modLoc("pattern"), - PatternResLocArgument::class.java, - SingletonArgumentInfo.contextFree { PatternResLocArgument.id() } + PatternResKeyArgument::class.java, + SingletonArgumentInfo.contextFree { PatternResKeyArgument.id() } ) HexAdvancementTriggers.registerTriggers(bind(BuiltInRegistries.TRIGGER_TYPES)) HexComposting.setup() HexStrippables.init() FabricImpetusStorage.registerStorage() + LootTableEvents.MODIFY.register { key, tableBuilder, source, lookup -> + if (Blocks.AMETHYST_CLUSTER.lootTable.equals(key)) { + tableBuilder.modifyPools { pool -> + pool.apply(SetItemCountFunction.setCount(UniformGenerator.between(1.0f, 2.0f))) + } + } + } + HexInterop.init() RegisterMisc.register() } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricClipContextMixin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricClipContextMixin.java index d2793487d0..098f8ae603 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricClipContextMixin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricClipContextMixin.java @@ -11,12 +11,12 @@ @Mixin(ClipContext.class) public abstract class FabricClipContextMixin { - @Redirect(method = "", + @Redirect(method = "(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/entity/Entity;)V", at = @At( value = "INVOKE", target = "Lnet/minecraft/world/phys/shapes/CollisionContext;of" + "(Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/shapes/CollisionContext;")) - public CollisionContext hex$getCollisionContext(Entity entity) { + private static CollisionContext hex$getCollisionContext(Entity entity) { if (entity == null) return CollisionContext.empty(); return CollisionContext.of(entity); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java deleted file mode 100644 index c691f1d7b2..0000000000 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricMixinReloadableServerResources.java +++ /dev/null @@ -1,21 +0,0 @@ -package at.petrak.hexcasting.fabric.mixin; - -import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.fabric.loot.FabricHexLootModJankery; -import at.petrak.hexcasting.mixin.accessor.AccessorLootTable; -import net.minecraft.server.ReloadableServerResources; -import net.minecraft.world.level.block.Blocks; -import net.minecraft.world.level.storage.loot.LootDataType; -import net.minecraft.world.level.storage.loot.functions.LootItemFunctions; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import java.util.Arrays; -import java.util.concurrent.CompletableFuture; - -@Mixin(ReloadableServerResources.class) -public class FabricMixinReloadableServerResources { - // Add the amethyst shard -} diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java index c4f0d7d3cf..2c856a896f 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.fabric.mixin.client; import at.petrak.hexcasting.client.RegisterClientStuff; +import com.llamalad7.mixinextras.sugar.Local; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.client.resources.model.ModelManager; @@ -22,17 +23,14 @@ @Mixin(ModelManager.class) public class FabricModelManagerMixin { @Shadow - private Map bakedRegistry; + private Map bakedRegistry; @Inject(at = @At(value = "INVOKE_ASSIGN", target = "Lnet/minecraft/client/resources/model/ModelBakery;" + - "getBakedTopLevelModels()Ljava/util/Map;", shift = At.Shift.AFTER), - method = "Lnet/minecraft/client/resources/model/ModelManager;apply(" + - "Lnet/minecraft/client/resources/model/ModelManager$ReloadState;" + - "Lnet/minecraft/util/profiling/ProfilerFiller;)V", - locals = LocalCapture.CAPTURE_FAILEXCEPTION) - private void onModelBake(ModelManager.ReloadState reloadState, ProfilerFiller profiler, CallbackInfo ci, ModelBakery modelLoader) { - Map newRegistry = new HashMap<>(); - this.bakedRegistry.forEach(((resourceLocation, bakedModel) -> newRegistry.put(new ModelResourceLocation(resourceLocation, ModelResourceLocation.INVENTORY_VARIANT), bakedModel))); + "getBakedTopLevelModels()Ljava/util/Map;", shift = At.Shift.AFTER), + method = "apply(Lnet/minecraft/client/resources/model/ModelManager$ReloadState;Lnet/minecraft/util/profiling/ProfilerFiller;)V" + ) + private void onModelBake(ModelManager.ReloadState reloadState, ProfilerFiller profiler, CallbackInfo ci, @Local ModelBakery modelLoader) { + Map newRegistry = new HashMap<>(this.bakedRegistry); RegisterClientStuff.onModelBake(modelLoader, newRegistry); } } diff --git a/Fabric/src/main/resources/fabricasting.mixins.json b/Fabric/src/main/resources/fabricasting.mixins.json index f23162f39f..6c35fa8fb9 100644 --- a/Fabric/src/main/resources/fabricasting.mixins.json +++ b/Fabric/src/main/resources/fabricasting.mixins.json @@ -11,7 +11,6 @@ "FabricEnchantmentTableBlockMixin", "FabricItemEntityMixin", "FabricLivingEntityMixin", - "FabricMixinReloadableServerResources", "FabricMobMixin", "FabricPlayerMixin", "FabricVillagerTurnIntoWitchMixin" diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 897b343019..e45b532b29 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -90,6 +90,9 @@ dependencies { modImplementation "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" // needed for inline to run modRuntimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") + modRuntimeOnly "com.samsthenerd.inline:inline-neoforge:$minecraftVersion-$inlineVersion" + modRuntimeOnly "dev.architectury:architectury-neoforge:$architecturyVersion" + // === OPTIONAL DEPS === diff --git a/Neoforge/src/main/resources/META-INF/neoforge.mods.toml b/Neoforge/src/main/resources/META-INF/neoforge.mods.toml index ff4213b599..75ffd0b01d 100644 --- a/Neoforge/src/main/resources/META-INF/neoforge.mods.toml +++ b/Neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -22,41 +22,41 @@ config = "hexcasting_forge.mixins.json" [[dependencies.hexcasting]] modId = "neoforge" mandatory = true -versionRange = "[81,)" +versionRange = "[21,)" ordering = "NONE" side = "BOTH" [[dependencies.hexcasting]] modId = "minecraft" mandatory = true -versionRange = "[1.20.1,1.21)" +versionRange = "[1.21.1,1.21.10)" ordering = "NONE" side = "BOTH" [[dependencies.hexcasting]] modId = "paucal" mandatory = true -versionRange = "[0.6.0,0.7.0)" +versionRange = "[0.7.1,)" ordering = "NONE" side = "BOTH" [[dependencies.hexcasting]] modId = "patchouli" mandatory = true -versionRange = "[1.20.1-80,)" +versionRange = "[1.21-80,)" ordering = "NONE" side = "BOTH" [[dependencies.hexcasting]] modId = "caelus" mandatory = true -versionRange = "[3.1.0+1.20,)" +versionRange = "[7.0.1+1.21.1,)" ordering = "NONE" side = "BOTH" [[dependencies.hexcasting]] modId = "inline" mandatory = true -versionRange = "[1.20.1-1.0.1,)" +versionRange = "[1.21.1-1.2.2,)" ordering = "NONE" side = "BOTH" \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 55a759d4ca..4ec28791ba 100644 --- a/gradle.properties +++ b/gradle.properties @@ -25,4 +25,7 @@ emiVersion=1.1.18+1.21.1 pehkuiVersion=3.8.3 inlineVersion=1.2.2-74 -clothConfigVersion=15.0.140 \ No newline at end of file +clothConfigVersion=15.0.140 + +# Runtime only +architecturyVersion=13.0.2 \ No newline at end of file From d5509854186f8cd6e39f78135ef30f12828deb81 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Tue, 2 Dec 2025 11:31:20 -0600 Subject: [PATCH 20/51] * Some datagen --- .../8f7cd5c924d3264b7777ef1696459761f9a70902 | 276 ---------------- .../d2fe5b6fab5fdc7ee7ca336c062752306bdf6128 | 298 ------------------ .../e5c5eb35b4ba40351ecb7d9f04c3527f2f5779b0 | 17 - ...c_connector.json => akashic_ligature.json} | 0 .../blockstates/amethyst_sconce.json | 25 +- .../directrix/boolean/dim_false_down.json | 2 +- .../directrix/boolean/dim_false_east.json | 2 +- .../directrix/boolean/dim_false_north.json | 2 +- .../directrix/boolean/dim_false_south.json | 2 +- .../directrix/boolean/dim_false_up.json | 2 +- .../directrix/boolean/dim_false_west.json | 2 +- .../directrix/boolean/dim_neither_down.json | 2 +- .../directrix/boolean/dim_neither_east.json | 2 +- .../directrix/boolean/dim_neither_north.json | 2 +- .../directrix/boolean/dim_neither_south.json | 2 +- .../directrix/boolean/dim_neither_up.json | 2 +- .../directrix/boolean/dim_neither_west.json | 2 +- .../directrix/boolean/dim_true_down.json | 2 +- .../directrix/boolean/dim_true_east.json | 2 +- .../directrix/boolean/dim_true_north.json | 2 +- .../directrix/boolean/dim_true_south.json | 2 +- .../circle/directrix/boolean/dim_true_up.json | 2 +- .../directrix/boolean/dim_true_west.json | 2 +- .../directrix/boolean/lit_false_down.json | 2 +- .../directrix/boolean/lit_false_east.json | 2 +- .../directrix/boolean/lit_false_north.json | 2 +- .../directrix/boolean/lit_false_south.json | 2 +- .../directrix/boolean/lit_false_up.json | 2 +- .../directrix/boolean/lit_false_west.json | 2 +- .../directrix/boolean/lit_neither_down.json | 2 +- .../directrix/boolean/lit_neither_east.json | 2 +- .../directrix/boolean/lit_neither_north.json | 2 +- .../directrix/boolean/lit_neither_south.json | 2 +- .../directrix/boolean/lit_neither_up.json | 2 +- .../directrix/boolean/lit_neither_west.json | 2 +- .../directrix/boolean/lit_true_down.json | 2 +- .../directrix/boolean/lit_true_east.json | 2 +- .../directrix/boolean/lit_true_north.json | 2 +- .../directrix/boolean/lit_true_south.json | 2 +- .../circle/directrix/boolean/lit_true_up.json | 2 +- .../directrix/boolean/lit_true_west.json | 2 +- .../circle/directrix/empty/dim_down.json | 2 +- .../circle/directrix/empty/dim_east.json | 2 +- .../circle/directrix/empty/dim_north.json | 2 +- .../circle/directrix/empty/dim_south.json | 2 +- .../block/circle/directrix/empty/dim_up.json | 2 +- .../circle/directrix/empty/dim_west.json | 2 +- .../circle/directrix/empty/lit_down.json | 2 +- .../circle/directrix/empty/lit_east.json | 2 +- .../circle/directrix/empty/lit_north.json | 2 +- .../circle/directrix/empty/lit_south.json | 2 +- .../block/circle/directrix/empty/lit_up.json | 2 +- .../circle/directrix/empty/lit_west.json | 2 +- .../directrix/redstone/dim_powered_down.json | 2 +- .../directrix/redstone/dim_powered_east.json | 2 +- .../directrix/redstone/dim_powered_north.json | 2 +- .../directrix/redstone/dim_powered_south.json | 2 +- .../directrix/redstone/dim_powered_up.json | 2 +- .../directrix/redstone/dim_powered_west.json | 2 +- .../redstone/dim_unpowered_down.json | 2 +- .../redstone/dim_unpowered_east.json | 2 +- .../redstone/dim_unpowered_north.json | 2 +- .../redstone/dim_unpowered_south.json | 2 +- .../directrix/redstone/dim_unpowered_up.json | 2 +- .../redstone/dim_unpowered_west.json | 2 +- .../directrix/redstone/lit_powered_down.json | 2 +- .../directrix/redstone/lit_powered_east.json | 2 +- .../directrix/redstone/lit_powered_north.json | 2 +- .../directrix/redstone/lit_powered_south.json | 2 +- .../directrix/redstone/lit_powered_up.json | 2 +- .../directrix/redstone/lit_powered_west.json | 2 +- .../redstone/lit_unpowered_down.json | 2 +- .../redstone/lit_unpowered_east.json | 2 +- .../redstone/lit_unpowered_north.json | 2 +- .../redstone/lit_unpowered_south.json | 2 +- .../directrix/redstone/lit_unpowered_up.json | 2 +- .../redstone/lit_unpowered_west.json | 2 +- .../block/circle/impetus/empty/dim_down.json | 2 +- .../block/circle/impetus/empty/dim_east.json | 2 +- .../block/circle/impetus/empty/dim_north.json | 2 +- .../block/circle/impetus/empty/dim_south.json | 2 +- .../block/circle/impetus/empty/dim_up.json | 2 +- .../block/circle/impetus/empty/dim_west.json | 2 +- .../block/circle/impetus/empty/lit_down.json | 2 +- .../block/circle/impetus/empty/lit_east.json | 2 +- .../block/circle/impetus/empty/lit_north.json | 2 +- .../block/circle/impetus/empty/lit_south.json | 2 +- .../block/circle/impetus/empty/lit_up.json | 2 +- .../block/circle/impetus/empty/lit_west.json | 2 +- .../block/circle/impetus/look/dim_down.json | 2 +- .../block/circle/impetus/look/dim_east.json | 2 +- .../block/circle/impetus/look/dim_north.json | 2 +- .../block/circle/impetus/look/dim_south.json | 2 +- .../block/circle/impetus/look/dim_up.json | 2 +- .../block/circle/impetus/look/dim_west.json | 2 +- .../block/circle/impetus/look/lit_down.json | 2 +- .../block/circle/impetus/look/lit_east.json | 2 +- .../block/circle/impetus/look/lit_north.json | 2 +- .../block/circle/impetus/look/lit_south.json | 2 +- .../block/circle/impetus/look/lit_up.json | 2 +- .../block/circle/impetus/look/lit_west.json | 2 +- .../circle/impetus/redstone/dim_down.json | 2 +- .../circle/impetus/redstone/dim_east.json | 2 +- .../circle/impetus/redstone/dim_north.json | 2 +- .../circle/impetus/redstone/dim_south.json | 2 +- .../block/circle/impetus/redstone/dim_up.json | 2 +- .../circle/impetus/redstone/dim_west.json | 2 +- .../circle/impetus/redstone/lit_down.json | 2 +- .../circle/impetus/redstone/lit_east.json | 2 +- .../circle/impetus/redstone/lit_north.json | 2 +- .../circle/impetus/redstone/lit_south.json | 2 +- .../block/circle/impetus/redstone/lit_up.json | 2 +- .../circle/impetus/redstone/lit_west.json | 2 +- .../circle/impetus/rightclick/dim_down.json | 2 +- .../circle/impetus/rightclick/dim_east.json | 2 +- .../circle/impetus/rightclick/dim_north.json | 2 +- .../circle/impetus/rightclick/dim_south.json | 2 +- .../circle/impetus/rightclick/dim_up.json | 2 +- .../circle/impetus/rightclick/dim_west.json | 2 +- .../circle/impetus/rightclick/lit_down.json | 2 +- .../circle/impetus/rightclick/lit_east.json | 2 +- .../circle/impetus/rightclick/lit_north.json | 2 +- .../circle/impetus/rightclick/lit_south.json | 2 +- .../circle/impetus/rightclick/lit_up.json | 2 +- .../circle/impetus/rightclick/lit_west.json | 2 +- .../hexcasting/models/block/slate_block.json | 2 +- ...c_connector.json => akashic_ligature.json} | 0 .../data/create/tags/block}/brittle.json | 0 .../data/forge/tags/item}/dusts/amethyst.json | 0 .../resources/data/forge/tags/item}/gems.json | 0 .../aaa_wasteful_cast.json | 12 +- .../aab_big_cast.json | 10 +- .../creative_unlocker.json | 9 +- .../enlightenment.json | 6 +- .../{advancements => advancement}/lore.json | 12 +- .../lore/cardamom1.json | 10 +- .../lore/cardamom2.json | 10 +- .../lore/cardamom3.json | 10 +- .../lore/cardamom4.json | 10 +- .../lore/cardamom5.json | 10 +- .../lore/experiment1.json | 10 +- .../lore/experiment2.json | 10 +- .../lore/inventory.json | 10 +- .../opened_eyes.json | 9 +- .../recipes/brainsweep/akashic_record.json | 12 +- .../recipes/brainsweep/budding_amethyst.json | 12 +- .../recipes/brainsweep/directrix_boolean.json | 35 ++ .../brainsweep/directrix_redstone.json | 35 ++ .../recipes/brainsweep/impetus_look.json | 35 ++ .../brainsweep/impetus_rightclick.json | 35 ++ .../brainsweep/impetus_storedplayer.json | 12 +- .../recipes/brainsweep/quench_allay.json | 35 ++ .../amethyst_dust_packing.json | 11 +- .../amethyst_dust_unpacking.json | 11 +- .../building_blocks/amethyst_tiles.json | 11 +- .../building_blocks/ancient_scroll_paper.json | 11 +- .../building_blocks/edified_fence.json | 9 +- .../building_blocks/edified_fence_gate.json | 9 +- .../building_blocks/edified_panel.json | 9 +- .../building_blocks/edified_planks.json | 9 +- .../recipes/building_blocks/edified_slab.json | 9 +- .../building_blocks/edified_stairs.json | 9 +- .../recipes/building_blocks/edified_tile.json | 9 +- .../recipes/building_blocks/edified_wood.json | 11 +- .../recipes/building_blocks/scroll_paper.json | 11 +- .../recipes/building_blocks/slate_block.json | 11 +- .../slate_block_from_slates.json | 11 +- .../stonecutting/amethyst_tiles.json | 11 +- .../stripped_edified_wood.json | 11 +- .../ageing_scroll_paper_lantern.json | 11 +- .../recipes/decorations/amethyst_sconce.json | 11 +- .../ancient_scroll_paper_lantern.json | 11 +- .../recipes/decorations/scroll.json | 9 +- .../recipes/decorations/scroll_medium.json | 9 +- .../decorations/scroll_paper_lantern.json | 11 +- .../recipes/decorations/scroll_small.json | 9 +- .../recipes/decorations/slate.json | 11 +- .../recipes/food/sub_sandwich.json | 11 +- .../decompose_quenched_shard/charged.json | 11 +- .../misc/decompose_quenched_shard/dust.json | 11 +- .../misc/decompose_quenched_shard/shard.json | 11 +- .../recipes/misc/default_colorizer.json | 11 +- .../recipes/misc/dye_colorizer_black.json | 11 +- .../recipes/misc/dye_colorizer_blue.json | 11 +- .../recipes/misc/dye_colorizer_brown.json | 11 +- .../recipes/misc/dye_colorizer_cyan.json | 11 +- .../recipes/misc/dye_colorizer_gray.json | 11 +- .../recipes/misc/dye_colorizer_green.json | 11 +- .../misc/dye_colorizer_light_blue.json | 11 +- .../misc/dye_colorizer_light_gray.json | 11 +- .../recipes/misc/dye_colorizer_lime.json | 11 +- .../recipes/misc/dye_colorizer_magenta.json | 11 +- .../recipes/misc/dye_colorizer_orange.json | 11 +- .../recipes/misc/dye_colorizer_pink.json | 11 +- .../recipes/misc/dye_colorizer_purple.json | 11 +- .../recipes/misc/dye_colorizer_red.json | 11 +- .../recipes/misc/dye_colorizer_white.json | 11 +- .../recipes/misc/dye_colorizer_yellow.json | 11 +- .../recipes/misc/pride_colorizer_agender.json | 11 +- .../recipes/misc/pride_colorizer_aroace.json | 11 +- .../misc/pride_colorizer_aromantic.json | 11 +- .../recipes/misc/pride_colorizer_asexual.json | 11 +- .../misc/pride_colorizer_bisexual.json | 11 +- .../recipes/misc/pride_colorizer_demiboy.json | 11 +- .../misc/pride_colorizer_demigirl.json | 11 +- .../recipes/misc/pride_colorizer_gay.json | 11 +- .../misc/pride_colorizer_genderfluid.json | 11 +- .../misc/pride_colorizer_genderqueer.json | 11 +- .../misc/pride_colorizer_intersex.json | 11 +- .../recipes/misc/pride_colorizer_lesbian.json | 11 +- .../misc/pride_colorizer_nonbinary.json | 11 +- .../recipes/misc/pride_colorizer_plural.json | 11 +- .../misc/pride_colorizer_transgender.json | 11 +- .../recipes/misc/uuid_colorizer.json | 11 +- .../recipes/redstone/akashic_bookshelf.json | 8 +- .../recipes/redstone/akashic_ligature.json | 35 ++ .../recipes/redstone/directrix/empty.json | 8 +- .../recipes/redstone/edified_button.json | 9 +- .../recipes/redstone/edified_door.json | 9 +- .../redstone/edified_pressure_plate.json | 9 +- .../recipes/redstone/edified_trapdoor.json | 9 +- .../recipes/redstone/impetus/empty.json | 8 +- .../advancement}/recipes/tools/abacus.json | 9 +- .../advancement}/recipes/tools/artifact.json | 9 +- .../advancement}/recipes/tools/cypher.json | 9 +- .../advancement}/recipes/tools/focus.json | 9 +- .../recipes/tools/focus_rotated.json | 9 +- .../recipes/tools/jeweler_hammer.json | 11 +- .../advancement}/recipes/tools/lens.json | 9 +- .../advancement}/recipes/tools/spellbook.json | 15 +- .../recipes/tools/staff/acacia.json | 11 +- .../recipes/tools/staff/bamboo.json | 11 +- .../recipes/tools/staff/birch.json | 11 +- .../recipes/tools/staff/cherry.json | 11 +- .../recipes/tools/staff/crimson.json | 11 +- .../recipes/tools/staff/dark_oak.json | 11 +- .../recipes/tools/staff/edified.json | 11 +- .../recipes/tools/staff/jungle.json | 11 +- .../recipes/tools/staff/mangrove.json | 11 +- .../recipes/tools/staff/mindsplice.json | 11 +- .../advancement}/recipes/tools/staff/oak.json | 11 +- .../recipes/tools/staff/quenched.json | 11 +- .../recipes/tools/staff/spruce.json | 11 +- .../recipes/tools/staff/warped.json | 11 +- .../recipes/tools/thought_knot.json | 9 +- .../advancement}/recipes/tools/trinket.json | 9 +- .../{advancements => advancement}/root.json | 8 +- .../y_u_no_cast_angy.json | 7 +- .../loot_modifiers/amethyst_cluster.json | 2 +- .../minecraft/chests/abandoned_mineshaft.json | 10 + .../cypher/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_corridor.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 2 +- .../minecraft/chests/pillager_outpost.json | 2 +- .../lore/minecraft/chests/simple_dungeon.json | 2 +- .../minecraft/chests/stronghold_library.json | 2 +- .../chests/village/village_desert_house.json | 2 +- .../chests/village/village_plains_house.json | 2 +- .../chests/village/village_savanna_house.json | 2 +- .../chests/village/village_snowy_house.json | 2 +- .../chests/village/village_taiga_house.json | 2 +- .../minecraft/chests/woodland_mansion.json | 2 +- .../minecraft/chests/abandoned_mineshaft.json | 2 +- .../scroll/minecraft/chests/ancient_city.json | 2 +- .../minecraft/chests/bastion_other.json | 2 +- .../minecraft/chests/bastion_treasure.json | 2 +- .../minecraft/chests/desert_pyramid.json | 2 +- .../minecraft/chests/end_city_treasure.json | 2 +- .../minecraft/chests/jungle_temple.json | 2 +- .../minecraft/chests/nether_bridge.json | 2 +- .../minecraft/chests/pillager_outpost.json | 2 +- .../minecraft/chests/shipwreck_map.json | 2 +- .../minecraft/chests/simple_dungeon.json | 2 +- .../minecraft/chests/stronghold_library.json | 2 +- .../chests/village/village_cartographer.json | 2 +- .../minecraft/chests/woodland_mansion.json | 2 +- .../loot_table}/blocks/akashic_bookshelf.json | 0 .../loot_table/blocks/akashic_ligature.json | 4 +- .../loot_table}/blocks/akashic_record.json | 0 .../loot_table}/blocks/amethyst_bricks.json | 0 .../blocks/amethyst_bricks_small.json | 0 .../blocks/amethyst_dust_block.json | 0 .../blocks/amethyst_edified_leaves.json | 20 +- .../loot_table}/blocks/amethyst_pillar.json | 0 .../loot_table}/blocks/amethyst_sconce.json | 0 .../loot_table}/blocks/amethyst_tiles.json | 0 .../blocks/ancient_scroll_paper.json | 0 .../blocks/ancient_scroll_paper_lantern.json | 0 .../blocks/aventurine_edified_leaves.json | 20 +- .../blocks/citrine_edified_leaves.json | 20 +- .../loot_table}/blocks/directrix/boolean.json | 0 .../loot_table}/blocks/directrix/empty.json | 0 .../blocks/directrix/redstone.json | 0 .../loot_table}/blocks/edified_button.json | 0 .../loot_table}/blocks/edified_door.json | 0 .../loot_table}/blocks/edified_fence.json | 0 .../blocks/edified_fence_gate.json | 0 .../loot_table}/blocks/edified_log.json | 0 .../blocks/edified_log_amethyst.json | 0 .../blocks/edified_log_aventurine.json | 0 .../blocks/edified_log_citrine.json | 0 .../blocks/edified_log_purple.json | 0 .../loot_table}/blocks/edified_panel.json | 0 .../loot_table}/blocks/edified_planks.json | 0 .../blocks/edified_pressure_plate.json | 0 .../loot_table}/blocks/edified_slab.json | 0 .../loot_table}/blocks/edified_stairs.json | 0 .../loot_table}/blocks/edified_tile.json | 0 .../loot_table}/blocks/edified_trapdoor.json | 0 .../loot_table}/blocks/edified_wood.json | 0 .../loot_table}/blocks/impetus/empty.json | 0 .../loot_table}/blocks/impetus/look.json | 0 .../loot_table}/blocks/impetus/redstone.json | 0 .../blocks/impetus/rightclick.json | 0 .../loot_table}/blocks/quenched_allay.json | 15 +- .../blocks/quenched_allay_bricks.json | 0 .../blocks/quenched_allay_bricks_small.json | 0 .../blocks/quenched_allay_tiles.json | 0 .../loot_table}/blocks/scroll_paper.json | 0 .../blocks/scroll_paper_lantern.json | 0 .../hexcasting/loot_table}/blocks/slate.json | 10 +- .../blocks/slate_amethyst_bricks.json | 0 .../blocks/slate_amethyst_bricks_small.json | 0 .../blocks/slate_amethyst_pillar.json | 0 .../blocks/slate_amethyst_tiles.json | 0 .../loot_table}/blocks/slate_block.json | 0 .../loot_table}/blocks/slate_bricks.json | 0 .../blocks/slate_bricks_small.json | 0 .../loot_table}/blocks/slate_pillar.json | 0 .../loot_table}/blocks/slate_tiles.json | 0 .../blocks/stripped_edified_log.json | 0 .../blocks/stripped_edified_wood.json | 0 .../loot_table}/inject/amethyst_cluster.json | 68 ++-- .../data/hexcasting/recipe}/abacus.json | 6 +- .../recipe}/ageing_scroll_paper_lantern.json | 4 +- .../hexcasting/recipe}/akashic_bookshelf.json | 6 +- .../hexcasting/recipe/akashic_ligature.json | 5 +- .../recipe}/amethyst_dust_packing.json | 6 +- .../recipe}/amethyst_dust_unpacking.json | 2 +- .../hexcasting/recipe}/amethyst_sconce.json | 7 +- .../hexcasting/recipe}/amethyst_tiles.json | 5 +- .../recipe}/ancient_scroll_paper.json | 4 +- .../recipe}/ancient_scroll_paper_lantern.json | 6 +- .../data/hexcasting/recipe}/artifact.json | 10 +- .../recipe/brainsweep/akashic_record.json | 16 + .../recipe}/brainsweep/budding_amethyst.json | 6 +- .../recipe}/brainsweep/directrix_boolean.json | 10 +- .../brainsweep/directrix_redstone.json | 10 +- .../recipe}/brainsweep/impetus_look.json | 10 +- .../brainsweep/impetus_rightclick.json | 10 +- .../brainsweep/impetus_storedplayer.json | 10 +- .../recipe}/brainsweep/quench_allay.json | 6 +- .../data/hexcasting/recipe/cypher.json | 8 +- .../decompose_quenched_shard/charged.json | 2 +- .../decompose_quenched_shard/dust.json | 2 +- .../decompose_quenched_shard/shard.json | 2 +- .../hexcasting/recipe}/default_colorizer.json | 6 +- .../hexcasting/recipe}/directrix/empty.json | 6 +- .../recipe}/dye_colorizer_black.json | 6 +- .../recipe}/dye_colorizer_blue.json | 6 +- .../recipe}/dye_colorizer_brown.json | 6 +- .../recipe}/dye_colorizer_cyan.json | 6 +- .../recipe}/dye_colorizer_gray.json | 6 +- .../recipe}/dye_colorizer_green.json | 6 +- .../recipe}/dye_colorizer_light_blue.json | 6 +- .../recipe}/dye_colorizer_light_gray.json | 6 +- .../recipe}/dye_colorizer_lime.json | 6 +- .../recipe}/dye_colorizer_magenta.json | 6 +- .../recipe}/dye_colorizer_orange.json | 6 +- .../recipe}/dye_colorizer_pink.json | 6 +- .../recipe}/dye_colorizer_purple.json | 6 +- .../hexcasting/recipe}/dye_colorizer_red.json | 6 +- .../recipe}/dye_colorizer_white.json | 6 +- .../recipe}/dye_colorizer_yellow.json | 6 +- .../hexcasting/recipe}/dynamicseal_focus.json | 0 .../recipe}/dynamicseal_spellbook.json | 0 .../hexcasting/recipe}/edified_button.json | 3 +- .../data/hexcasting/recipe}/edified_door.json | 5 +- .../hexcasting/recipe}/edified_fence.json | 5 +- .../recipe}/edified_fence_gate.json | 6 +- .../hexcasting/recipe}/edified_panel.json | 5 +- .../hexcasting/recipe}/edified_planks.json | 2 +- .../recipe}/edified_pressure_plate.json | 6 +- .../data/hexcasting/recipe}/edified_slab.json | 5 +- .../hexcasting/recipe}/edified_stairs.json | 5 +- .../data/hexcasting/recipe}/edified_tile.json | 5 +- .../hexcasting/recipe}/edified_trapdoor.json | 5 +- .../data/hexcasting/recipe}/edified_wood.json | 5 +- .../data/hexcasting/recipe}/focus.json | 10 +- .../hexcasting/recipe}/focus_rotated.json | 10 +- .../hexcasting/recipe}/impetus/empty.json | 6 +- .../hexcasting/recipe}/jeweler_hammer.json | 10 +- .../data/hexcasting/recipe}/lens.json | 6 +- .../recipe}/pride_colorizer_agender.json | 6 +- .../recipe}/pride_colorizer_aroace.json | 6 +- .../recipe}/pride_colorizer_aromantic.json | 6 +- .../recipe}/pride_colorizer_asexual.json | 6 +- .../recipe}/pride_colorizer_bisexual.json | 6 +- .../recipe}/pride_colorizer_demiboy.json | 6 +- .../recipe}/pride_colorizer_demigirl.json | 6 +- .../recipe}/pride_colorizer_gay.json | 6 +- .../recipe}/pride_colorizer_genderfluid.json | 6 +- .../recipe}/pride_colorizer_genderqueer.json | 6 +- .../recipe}/pride_colorizer_intersex.json | 6 +- .../recipe}/pride_colorizer_lesbian.json | 6 +- .../recipe}/pride_colorizer_nonbinary.json | 6 +- .../recipe}/pride_colorizer_plural.json | 6 +- .../recipe}/pride_colorizer_transgender.json | 6 +- .../data/hexcasting/recipe}/scroll.json | 6 +- .../hexcasting/recipe}/scroll_medium.json | 6 +- .../data/hexcasting/recipe}/scroll_paper.json | 5 +- .../recipe}/scroll_paper_lantern.json | 6 +- .../data/hexcasting/recipe}/scroll_small.json | 6 +- .../data/hexcasting/recipe}/slate.json | 5 +- .../data/hexcasting/recipe}/slate_block.json | 5 +- .../recipe}/slate_block_from_slates.json | 6 +- .../data/hexcasting/recipe}/spellbook.json | 8 +- .../data/hexcasting/recipe}/staff/acacia.json | 6 +- .../data/hexcasting/recipe}/staff/bamboo.json | 6 +- .../data/hexcasting/recipe}/staff/birch.json | 6 +- .../data/hexcasting/recipe}/staff/cherry.json | 6 +- .../hexcasting/recipe}/staff/crimson.json | 6 +- .../hexcasting/recipe}/staff/dark_oak.json | 6 +- .../hexcasting/recipe}/staff/edified.json | 6 +- .../data/hexcasting/recipe}/staff/jungle.json | 6 +- .../hexcasting/recipe}/staff/mangrove.json | 6 +- .../hexcasting/recipe}/staff/mindsplice.json | 6 +- .../data/hexcasting/recipe}/staff/oak.json | 6 +- .../hexcasting/recipe}/staff/quenched.json | 6 +- .../data/hexcasting/recipe}/staff/spruce.json | 6 +- .../data/hexcasting/recipe}/staff/warped.json | 6 +- .../recipe}/stonecutting/amethyst_tiles.json | 6 +- .../recipe}/stripped_edified_wood.json | 5 +- .../data/hexcasting/recipe}/sub_sandwich.json | 6 +- .../data/hexcasting/recipe}/thought_knot.json | 3 +- .../data/hexcasting/recipe}/trinket.json | 8 +- .../hexcasting/recipe}/uuid_colorizer.json | 6 +- .../block}/brainswept_circle_components.json | 0 .../tags/block}/cheap_to_break_block.json | 0 .../hexcasting/tags/block}/directrices.json | 0 .../hexcasting/tags/block}/edified_logs.json | 0 .../tags/block}/edified_planks.json | 0 .../tags/block/hex_unbreakable.json | 5 + .../data/hexcasting/tags/block}/impeti.json | 0 .../hexcasting/tags/block}/water_plants.json | 0 .../action/can_start_enlighten.json | 0 .../hexcasting/action/per_world_pattern.json | 0 .../action/requires_enlightenment.json | 0 .../item}/brainswept_circle_components.json | 0 .../hexcasting/tags/item}/directrices.json | 0 .../hexcasting/tags/item}/edified_logs.json | 0 .../hexcasting/tags/item}/edified_planks.json | 0 .../tags/item}/grants_root_advancement.json | 0 .../data/hexcasting/tags/item}/impeti.json | 0 .../hexcasting/tags/item}/phial_base.json | 0 .../hexcasting/tags/item}/seal_materials.json | 0 .../data/hexcasting/tags/item}/staves.json | 0 .../data/minecraft/tags/block}/buttons.json | 0 .../tags/block}/crystal_sound_blocks.json | 0 .../data/minecraft/tags/block}/doors.json | 0 .../minecraft/tags/block}/fence_gates.json | 0 .../data/minecraft/tags/block}/fences.json | 0 .../data/minecraft/tags/block}/leaves.json | 0 .../data/minecraft/tags/block}/logs.json | 0 .../minecraft/tags/block}/logs_that_burn.json | 0 .../minecraft/tags/block}/mineable/axe.json | 2 +- .../minecraft/tags/block}/mineable/hoe.json | 0 .../tags/block}/mineable/pickaxe.json | 0 .../tags/block}/mineable/shovel.json | 0 .../data/minecraft/tags/block}/planks.json | 0 .../tags/block}/pressure_plates.json | 0 .../data/minecraft/tags/block}/slabs.json | 0 .../data/minecraft/tags/block}/stairs.json | 0 .../data/minecraft/tags/block}/trapdoors.json | 0 .../tags/block}/unstable_bottom_center.json | 0 .../minecraft/tags/block}/wooden_buttons.json | 0 .../minecraft/tags/block}/wooden_doors.json | 0 .../minecraft/tags/block}/wooden_fences.json | 0 .../tags/block}/wooden_pressure_plates.json | 0 .../minecraft/tags/block}/wooden_slabs.json | 0 .../minecraft/tags/block}/wooden_stairs.json | 0 .../tags/block}/wooden_trapdoors.json | 0 .../data/minecraft/tags/item}/buttons.json | 0 .../data/minecraft/tags/item}/doors.json | 0 .../data/minecraft/tags/item}/leaves.json | 0 .../data/minecraft/tags/item}/logs.json | 0 .../minecraft/tags/item}/logs_that_burn.json | 0 .../data/minecraft/tags/item}/planks.json | 0 .../data/minecraft/tags/item}/slabs.json | 0 .../data/minecraft/tags/item}/trapdoors.json | 0 .../minecraft/tags/item}/wooden_buttons.json | 0 .../minecraft/tags/item}/wooden_doors.json | 0 .../tags/item}/wooden_pressure_plates.json | 0 .../minecraft/tags/item}/wooden_slabs.json | 0 .../tags/item}/wooden_trapdoors.json | 0 .../loot_modifiers/global_loot_modifiers.json | 46 +-- .../api/advancements/OvercastTrigger.java | 5 - .../client/RegisterClientStuff.java | 4 +- .../hexcasting/common/lib/HexBlocks.java | 2 +- .../hexcasting/datagen/HexAdvancements.java | 2 +- .../xplat/IClientXplatAbstractions.java | 2 + .../block/{slate.png => slate_block.png} | Bin Fabric/build.gradle | 11 +- .../19f2b40f78e342d65a8cb499a41e3fcb2eadaca3 | 58 ---- .../2ba8da2cf2d44ff18dc72cc891b094eca6836a5c | 25 -- .../3cb4ab563deee432e7d307024048f57946bafb1c | 4 - .../812fdb58b7018b2d5c5af7da57a2b1857fa66794 | 34 -- .../c70ef2fe5da52437c1f53bcc9ea0e416f16bcc0b | 220 ------------- .../data/c/tags/items/amethyst_dusts.json | 6 - .../resources/data/c/tags/items/gems.json | 6 - .../recipes/crushing/amethyst_block.json | 28 -- .../recipes/crushing/amethyst_cluster.json | 31 -- .../data/create/tags/blocks/brittle.json | 9 - .../brainsweep/brainsweep/akashic_record.json | 35 -- .../brainsweep/budding_amethyst.json | 35 -- .../brainsweep/directrix_boolean.json | 35 -- .../brainsweep/directrix_redstone.json | 35 -- .../brainsweep/brainsweep/impetus_look.json | 35 -- .../brainsweep/impetus_rightclick.json | 35 -- .../brainsweep/impetus_storedplayer.json | 35 -- .../brainsweep/brainsweep/quench_allay.json | 35 -- .../amethyst_dust_packing.json | 35 -- .../amethyst_dust_unpacking.json | 35 -- .../building_blocks/ancient_scroll_paper.json | 35 -- .../building_blocks/edified_fence_gate.json | 33 -- .../building_blocks/edified_panel.json | 33 -- .../slate_block_from_slates.json | 35 -- .../stonecutting/amethyst_tiles.json | 35 -- .../stripped_edified_wood.json | 35 -- .../recipes/decorations/scroll.json | 33 -- .../recipes/decorations/scroll_medium.json | 33 -- .../recipes/misc/dye_colorizer_black.json | 35 -- .../recipes/misc/dye_colorizer_brown.json | 35 -- .../recipes/misc/dye_colorizer_green.json | 35 -- .../misc/dye_colorizer_light_blue.json | 35 -- .../misc/dye_colorizer_light_gray.json | 35 -- .../recipes/misc/dye_colorizer_magenta.json | 35 -- .../recipes/misc/dye_colorizer_orange.json | 35 -- .../recipes/misc/dye_colorizer_purple.json | 35 -- .../recipes/misc/dye_colorizer_white.json | 35 -- .../recipes/misc/dye_colorizer_yellow.json | 35 -- .../recipes/misc/pride_colorizer_agender.json | 35 -- .../recipes/misc/pride_colorizer_aroace.json | 35 -- .../misc/pride_colorizer_aromantic.json | 35 -- .../recipes/misc/pride_colorizer_asexual.json | 35 -- .../misc/pride_colorizer_bisexual.json | 35 -- .../recipes/misc/pride_colorizer_demiboy.json | 35 -- .../misc/pride_colorizer_demigirl.json | 35 -- .../recipes/misc/pride_colorizer_gay.json | 35 -- .../misc/pride_colorizer_genderfluid.json | 35 -- .../misc/pride_colorizer_genderqueer.json | 35 -- .../misc/pride_colorizer_intersex.json | 35 -- .../recipes/misc/pride_colorizer_lesbian.json | 35 -- .../misc/pride_colorizer_nonbinary.json | 35 -- .../misc/pride_colorizer_pansexual.json | 35 -- .../recipes/misc/pride_colorizer_plural.json | 35 -- .../misc/pride_colorizer_transgender.json | 35 -- .../redstone/edified_pressure_plate.json | 33 -- .../advancements/recipes/tools/artifact.json | 33 -- .../advancements/recipes/tools/focus.json | 33 -- .../recipes/tools/staff/mindsplice.json | 35 -- .../loot_tables/blocks/akashic_connector.json | 15 - .../blocks/amethyst_edified_leaves.json | 54 ---- .../blocks/aventurine_edified_leaves.json | 54 ---- .../blocks/citrine_edified_leaves.json | 54 ---- .../loot_tables/blocks/quenched_allay.json | 64 ---- .../loot_tables/inject/amethyst_cluster.json | 191 ----------- .../data/hexcasting/recipes/abacus.json | 24 -- .../recipes/ageing_scroll_paper_lantern.json | 45 --- .../hexcasting/recipes/akashic_bookshelf.json | 24 -- .../recipes/amethyst_dust_unpacking.json | 13 - .../hexcasting/recipes/amethyst_sconce.json | 26 -- .../recipes/ancient_scroll_paper.json | 45 --- .../data/hexcasting/recipes/artifact.json | 29 -- .../recipes/brainsweep/akashic_record.json | 16 - .../recipes/brainsweep/budding_amethyst.json | 15 - .../recipes/brainsweep/directrix_boolean.json | 21 -- .../brainsweep/directrix_redstone.json | 21 -- .../brainsweep/impetus_storedplayer.json | 21 -- .../recipes/brainsweep/quench_allay.json | 15 - .../create/crushing/amethyst_shard.json | 27 -- .../farmersdelight/cutting/akashic_door.json | 25 -- .../cutting/akashic_trapdoor.json | 25 -- .../farmersdelight/cutting/akashic_wood.json | 29 -- .../farmersdelight/cutting/edified_log.json | 29 -- .../cutting/edified_log_amethyst.json | 29 -- .../cutting/edified_log_aventurine.json | 29 -- .../cutting/edified_log_citrine.json | 29 -- .../cutting/edified_log_purple.json | 29 -- .../data/hexcasting/recipes/cypher.json | 26 -- .../decompose_quenched_shard/dust.json | 16 - .../hexcasting/recipes/directrix/empty.json | 27 -- .../recipes/dye_colorizer_blue.json | 21 -- .../recipes/dye_colorizer_cyan.json | 21 -- .../recipes/dye_colorizer_light_blue.json | 21 -- .../recipes/dye_colorizer_light_gray.json | 21 -- .../data/hexcasting/recipes/edified_door.json | 19 -- .../hexcasting/recipes/edified_fence.json | 21 -- .../recipes/edified_fence_gate.json | 20 -- .../recipes/edified_pressure_plate.json | 16 - .../data/hexcasting/recipes/edified_slab.json | 17 - .../data/hexcasting/recipes/edified_tile.json | 19 -- .../data/hexcasting/recipes/edified_wood.json | 18 -- .../data/hexcasting/recipes/focus.json | 32 -- .../hexcasting/recipes/focus_rotated.json | 32 -- .../hexcasting/recipes/impetus/empty.json | 27 -- .../hexcasting/recipes/jeweler_hammer.json | 42 --- .../recipes/pride_colorizer_pansexual.json | 28 -- .../data/hexcasting/recipes/scroll.json | 21 -- .../hexcasting/recipes/scroll_medium.json | 21 -- .../data/hexcasting/recipes/scroll_paper.json | 25 -- .../data/hexcasting/recipes/scroll_small.json | 20 -- .../recipes/slate_block_from_slates.json | 17 - .../data/hexcasting/recipes/spellbook.json | 32 -- .../data/hexcasting/recipes/staff/acacia.json | 24 -- .../data/hexcasting/recipes/staff/cherry.json | 24 -- .../recipes/stripped_edified_wood.json | 18 -- .../data/hexcasting/recipes/thought_knot.json | 15 - .../data/hexcasting/recipes/trinket.json | 26 -- .../hexcasting/recipes/uuid_colorizer.json | 24 -- .../tags/action/can_start_enlighten.json | 19 -- .../tags/action/per_world_pattern.json | 19 -- .../tags/action/requires_enlightenment.json | 19 -- .../blocks/brainswept_circle_components.json | 7 - .../tags/blocks/cheap_to_break_block.json | 7 - .../hexcasting/tags/blocks/directrices.json | 7 - .../hexcasting/tags/blocks/edified_logs.json | 13 - .../tags/blocks/edified_planks.json | 8 - .../data/hexcasting/tags/blocks/impeti.json | 8 - .../hexcasting/tags/blocks/water_plants.json | 9 - .../items/brainswept_circle_components.json | 7 - .../hexcasting/tags/items/directrices.json | 7 - .../hexcasting/tags/items/edified_logs.json | 13 - .../hexcasting/tags/items/edified_planks.json | 8 - .../tags/items/grants_root_advancement.json | 9 - .../data/hexcasting/tags/items/impeti.json | 8 - .../hexcasting/tags/items/phial_base.json | 6 - .../hexcasting/tags/items/seal_materials.json | 6 - .../data/hexcasting/tags/items/staves.json | 19 -- .../data/minecraft/tags/blocks/buttons.json | 6 - .../tags/blocks/crystal_sound_blocks.json | 9 - .../data/minecraft/tags/blocks/doors.json | 6 - .../minecraft/tags/blocks/fence_gates.json | 6 - .../data/minecraft/tags/blocks/fences.json | 6 - .../data/minecraft/tags/blocks/leaves.json | 8 - .../data/minecraft/tags/blocks/logs.json | 13 - .../minecraft/tags/blocks/logs_that_burn.json | 13 - .../minecraft/tags/blocks/mineable/axe.json | 26 -- .../minecraft/tags/blocks/mineable/hoe.json | 8 - .../tags/blocks/mineable/pickaxe.json | 31 -- .../tags/blocks/mineable/shovel.json | 6 - .../data/minecraft/tags/blocks/planks.json | 8 - .../tags/blocks/pressure_plates.json | 6 - .../data/minecraft/tags/blocks/slabs.json | 6 - .../data/minecraft/tags/blocks/stairs.json | 6 - .../data/minecraft/tags/blocks/trapdoors.json | 6 - .../tags/blocks/unstable_bottom_center.json | 6 - .../minecraft/tags/blocks/wooden_buttons.json | 6 - .../minecraft/tags/blocks/wooden_doors.json | 6 - .../minecraft/tags/blocks/wooden_fences.json | 7 - .../tags/blocks/wooden_pressure_plates.json | 6 - .../minecraft/tags/blocks/wooden_slabs.json | 6 - .../minecraft/tags/blocks/wooden_stairs.json | 6 - .../tags/blocks/wooden_trapdoors.json | 6 - .../data/minecraft/tags/items/buttons.json | 6 - .../data/minecraft/tags/items/doors.json | 6 - .../data/minecraft/tags/items/leaves.json | 8 - .../data/minecraft/tags/items/logs.json | 13 - .../minecraft/tags/items/logs_that_burn.json | 13 - .../data/minecraft/tags/items/planks.json | 8 - .../data/minecraft/tags/items/slabs.json | 6 - .../data/minecraft/tags/items/trapdoors.json | 6 - .../minecraft/tags/items/wooden_buttons.json | 6 - .../minecraft/tags/items/wooden_doors.json | 6 - .../tags/items/wooden_pressure_plates.json | 6 - .../minecraft/tags/items/wooden_slabs.json | 6 - .../tags/items/wooden_trapdoors.json | 6 - .../fabric/xplat/FabricClientXplatImpl.java | 6 + Neoforge/build.gradle | 19 +- Neoforge/gradle.properties | 2 + .../recipes/crushing/amethyst_block.json | 33 -- .../recipes/crushing/amethyst_cluster.json | 36 --- .../brainsweep/brainsweep/akashic_record.json | 35 -- .../brainsweep/budding_amethyst.json | 35 -- .../brainsweep/directrix_boolean.json | 35 -- .../brainsweep/directrix_redstone.json | 35 -- .../brainsweep/brainsweep/impetus_look.json | 35 -- .../brainsweep/impetus_rightclick.json | 35 -- .../brainsweep/impetus_storedplayer.json | 35 -- .../brainsweep/brainsweep/quench_allay.json | 35 -- .../building_blocks/amethyst_tiles.json | 35 -- .../building_blocks/edified_fence.json | 33 -- .../building_blocks/edified_planks.json | 33 -- .../recipes/building_blocks/edified_slab.json | 33 -- .../building_blocks/edified_stairs.json | 33 -- .../recipes/building_blocks/edified_tile.json | 33 -- .../recipes/building_blocks/edified_wood.json | 35 -- .../recipes/building_blocks/scroll_paper.json | 35 -- .../recipes/building_blocks/slate_block.json | 35 -- .../ageing_scroll_paper_lantern.json | 35 -- .../recipes/decorations/amethyst_sconce.json | 35 -- .../ancient_scroll_paper_lantern.json | 35 -- .../decorations/scroll_paper_lantern.json | 35 -- .../recipes/decorations/scroll_small.json | 33 -- .../recipes/decorations/slate.json | 35 -- .../recipes/food/sub_sandwich.json | 35 -- .../decompose_quenched_shard/charged.json | 35 -- .../misc/decompose_quenched_shard/dust.json | 35 -- .../misc/decompose_quenched_shard/shard.json | 35 -- .../recipes/misc/default_colorizer.json | 35 -- .../recipes/misc/dye_colorizer_blue.json | 35 -- .../recipes/misc/dye_colorizer_cyan.json | 35 -- .../recipes/misc/dye_colorizer_gray.json | 35 -- .../recipes/misc/dye_colorizer_lime.json | 35 -- .../recipes/misc/dye_colorizer_pink.json | 35 -- .../recipes/misc/dye_colorizer_red.json | 35 -- .../misc/pride_colorizer_pansexual.json | 35 -- .../recipes/misc/uuid_colorizer.json | 35 -- .../recipes/redstone/akashic_bookshelf.json | 35 -- .../recipes/redstone/akashic_connector.json | 35 -- .../recipes/redstone/edified_button.json | 33 -- .../recipes/redstone/edified_door.json | 33 -- .../recipes/redstone/edified_trapdoor.json | 33 -- .../advancements/recipes/tools/abacus.json | 33 -- .../advancements/recipes/tools/cypher.json | 33 -- .../recipes/tools/focus_rotated.json | 33 -- .../recipes/tools/jeweler_hammer.json | 35 -- .../advancements/recipes/tools/lens.json | 33 -- .../advancements/recipes/tools/spellbook.json | 48 --- .../recipes/tools/staff/acacia.json | 35 -- .../recipes/tools/staff/bamboo.json | 35 -- .../recipes/tools/staff/birch.json | 35 -- .../recipes/tools/staff/cherry.json | 35 -- .../recipes/tools/staff/crimson.json | 35 -- .../recipes/tools/staff/dark_oak.json | 35 -- .../recipes/tools/staff/edified.json | 35 -- .../recipes/tools/staff/jungle.json | 35 -- .../recipes/tools/staff/mangrove.json | 35 -- .../advancements/recipes/tools/staff/oak.json | 35 -- .../recipes/tools/staff/quenched.json | 35 -- .../recipes/tools/staff/spruce.json | 35 -- .../recipes/tools/staff/warped.json | 35 -- .../recipes/tools/thought_knot.json | 33 -- .../advancements/recipes/tools/trinket.json | 33 -- .../loot_tables/blocks/akashic_bookshelf.json | 15 - .../loot_tables/blocks/akashic_connector.json | 15 - .../loot_tables/blocks/akashic_record.json | 15 - .../blocks/amethyst_bricks_small.json | 15 - .../blocks/amethyst_dust_block.json | 15 - .../loot_tables/blocks/amethyst_pillar.json | 15 - .../loot_tables/blocks/amethyst_sconce.json | 15 - .../loot_tables/blocks/amethyst_tiles.json | 15 - .../blocks/ancient_scroll_paper.json | 15 - .../blocks/ancient_scroll_paper_lantern.json | 15 - .../loot_tables/blocks/directrix/boolean.json | 15 - .../loot_tables/blocks/directrix/empty.json | 15 - .../blocks/directrix/redstone.json | 15 - .../loot_tables/blocks/edified_button.json | 15 - .../loot_tables/blocks/edified_door.json | 24 -- .../loot_tables/blocks/edified_fence.json | 15 - .../blocks/edified_fence_gate.json | 15 - .../loot_tables/blocks/edified_log.json | 15 - .../blocks/edified_log_amethyst.json | 15 - .../blocks/edified_log_aventurine.json | 15 - .../blocks/edified_log_citrine.json | 15 - .../blocks/edified_log_purple.json | 15 - .../loot_tables/blocks/edified_panel.json | 15 - .../loot_tables/blocks/edified_planks.json | 15 - .../blocks/edified_pressure_plate.json | 15 - .../loot_tables/blocks/edified_slab.json | 34 -- .../loot_tables/blocks/edified_stairs.json | 15 - .../loot_tables/blocks/edified_tile.json | 15 - .../loot_tables/blocks/edified_trapdoor.json | 15 - .../loot_tables/blocks/edified_wood.json | 15 - .../loot_tables/blocks/impetus/empty.json | 15 - .../loot_tables/blocks/impetus/look.json | 15 - .../loot_tables/blocks/impetus/redstone.json | 15 - .../blocks/impetus/rightclick.json | 15 - .../blocks/quenched_allay_bricks.json | 15 - .../blocks/quenched_allay_bricks_small.json | 15 - .../blocks/quenched_allay_tiles.json | 15 - .../loot_tables/blocks/scroll_paper.json | 15 - .../blocks/scroll_paper_lantern.json | 15 - .../hexcasting/loot_tables/blocks/slate.json | 28 -- .../blocks/slate_amethyst_bricks.json | 15 - .../blocks/slate_amethyst_bricks_small.json | 15 - .../blocks/slate_amethyst_pillar.json | 15 - .../blocks/slate_amethyst_tiles.json | 15 - .../loot_tables/blocks/slate_block.json | 15 - .../loot_tables/blocks/slate_bricks.json | 15 - .../blocks/slate_bricks_small.json | 15 - .../loot_tables/blocks/slate_pillar.json | 15 - .../loot_tables/blocks/slate_tiles.json | 15 - .../blocks/stripped_edified_log.json | 15 - .../blocks/stripped_edified_wood.json | 15 - .../hexcasting/recipes/akashic_connector.json | 31 -- .../recipes/amethyst_dust_packing.json | 17 - .../hexcasting/recipes/amethyst_tiles.json | 25 -- .../recipes/ancient_scroll_paper_lantern.json | 20 -- .../recipes/brainsweep/akashic_record.json | 16 - .../recipes/brainsweep/impetus_look.json | 20 -- .../brainsweep/impetus_rightclick.json | 20 -- .../create/crushing/amethyst_shard.json | 32 -- .../farmersdelight/cutting/akashic_door.json | 30 -- .../cutting/akashic_trapdoor.json | 30 -- .../farmersdelight/cutting/akashic_wood.json | 34 -- .../farmersdelight/cutting/edified_log.json | 34 -- .../cutting/edified_log_amethyst.json | 34 -- .../cutting/edified_log_aventurine.json | 34 -- .../cutting/edified_log_citrine.json | 34 -- .../cutting/edified_log_purple.json | 34 -- .../data/hexcasting/recipes/cypher.json | 21 -- .../decompose_quenched_shard/charged.json | 16 - .../decompose_quenched_shard/shard.json | 16 - .../hexcasting/recipes/default_colorizer.json | 24 -- .../recipes/dye_colorizer_black.json | 21 -- .../recipes/dye_colorizer_brown.json | 21 -- .../recipes/dye_colorizer_gray.json | 21 -- .../recipes/dye_colorizer_green.json | 21 -- .../recipes/dye_colorizer_lime.json | 21 -- .../recipes/dye_colorizer_magenta.json | 21 -- .../recipes/dye_colorizer_orange.json | 21 -- .../recipes/dye_colorizer_pink.json | 21 -- .../recipes/dye_colorizer_purple.json | 21 -- .../hexcasting/recipes/dye_colorizer_red.json | 21 -- .../recipes/dye_colorizer_white.json | 21 -- .../recipes/dye_colorizer_yellow.json | 21 -- .../hexcasting/recipes/dynamicseal_focus.json | 4 - .../recipes/dynamicseal_spellbook.json | 4 - .../hexcasting/recipes/edified_button.json | 12 - .../hexcasting/recipes/edified_panel.json | 22 -- .../hexcasting/recipes/edified_planks.json | 13 - .../hexcasting/recipes/edified_stairs.json | 19 -- .../hexcasting/recipes/edified_trapdoor.json | 18 -- .../recipes/pride_colorizer_agender.json | 21 -- .../recipes/pride_colorizer_aroace.json | 21 -- .../recipes/pride_colorizer_aromantic.json | 21 -- .../recipes/pride_colorizer_asexual.json | 21 -- .../recipes/pride_colorizer_bisexual.json | 21 -- .../recipes/pride_colorizer_demiboy.json | 21 -- .../recipes/pride_colorizer_demigirl.json | 21 -- .../recipes/pride_colorizer_gay.json | 21 -- .../recipes/pride_colorizer_genderfluid.json | 21 -- .../recipes/pride_colorizer_genderqueer.json | 21 -- .../recipes/pride_colorizer_intersex.json | 21 -- .../recipes/pride_colorizer_lesbian.json | 21 -- .../recipes/pride_colorizer_nonbinary.json | 21 -- .../recipes/pride_colorizer_pansexual.json | 28 -- .../recipes/pride_colorizer_plural.json | 21 -- .../recipes/pride_colorizer_transgender.json | 21 -- .../recipes/scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipes/slate.json | 21 -- .../data/hexcasting/recipes/slate_block.json | 25 -- .../data/hexcasting/recipes/staff/bamboo.json | 24 -- .../data/hexcasting/recipes/staff/birch.json | 24 -- .../hexcasting/recipes/staff/crimson.json | 24 -- .../hexcasting/recipes/staff/dark_oak.json | 24 -- .../hexcasting/recipes/staff/edified.json | 24 -- .../data/hexcasting/recipes/staff/jungle.json | 24 -- .../hexcasting/recipes/staff/mangrove.json | 24 -- .../hexcasting/recipes/staff/mindsplice.json | 24 -- .../data/hexcasting/recipes/staff/oak.json | 24 -- .../hexcasting/recipes/staff/quenched.json | 24 -- .../data/hexcasting/recipes/staff/spruce.json | 24 -- .../data/hexcasting/recipes/staff/warped.json | 24 -- .../recipes/stonecutting/amethyst_tiles.json | 8 - .../data/hexcasting/recipes/sub_sandwich.json | 27 -- .../xplat/HexBlockStatesAndModels.java | 17 +- .../forge/xplat/ForgeClientXplatImpl.java | 6 + 873 files changed, 1359 insertions(+), 10835 deletions(-) delete mode 100644 Common/src/generated/resources/.cache/8f7cd5c924d3264b7777ef1696459761f9a70902 delete mode 100644 Common/src/generated/resources/.cache/d2fe5b6fab5fdc7ee7ca336c062752306bdf6128 delete mode 100644 Common/src/generated/resources/.cache/e5c5eb35b4ba40351ecb7d9f04c3527f2f5779b0 rename Common/src/generated/resources/assets/hexcasting/blockstates/{akashic_connector.json => akashic_ligature.json} (100%) rename Common/src/generated/resources/assets/hexcasting/models/item/{akashic_connector.json => akashic_ligature.json} (100%) rename {Neoforge/src/generated/resources/data/create/tags/blocks => Common/src/generated/resources/data/create/tags/block}/brittle.json (100%) rename {Neoforge/src/generated/resources/data/forge/tags/items => Common/src/generated/resources/data/forge/tags/item}/dusts/amethyst.json (100%) rename {Neoforge/src/generated/resources/data/forge/tags/items => Common/src/generated/resources/data/forge/tags/item}/gems.json (100%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/aaa_wasteful_cast.json (72%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/aab_big_cast.json (74%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/creative_unlocker.json (79%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/enlightenment.json (88%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore.json (64%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/cardamom1.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/cardamom2.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/cardamom3.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/cardamom4.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/cardamom5.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/experiment1.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/experiment2.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/lore/inventory.json (67%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/opened_eyes.json (81%) rename Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json => Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json (77%) rename Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json => Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json (76%) create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json rename Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json => Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json (76%) create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/amethyst_dust_packing.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/amethyst_dust_unpacking.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/amethyst_tiles.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/ancient_scroll_paper.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_fence.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_fence_gate.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_panel.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_planks.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_slab.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_stairs.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_tile.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/edified_wood.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/scroll_paper.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/slate_block.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/slate_block_from_slates.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/stonecutting/amethyst_tiles.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/building_blocks/stripped_edified_wood.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/ageing_scroll_paper_lantern.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/amethyst_sconce.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/ancient_scroll_paper_lantern.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/scroll.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/scroll_medium.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/scroll_paper_lantern.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/scroll_small.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/decorations/slate.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/food/sub_sandwich.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/decompose_quenched_shard/charged.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/decompose_quenched_shard/dust.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/decompose_quenched_shard/shard.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/default_colorizer.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_black.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_blue.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_brown.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_cyan.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_gray.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_green.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_light_blue.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_light_gray.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_lime.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_magenta.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_orange.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_pink.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_purple.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_red.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_white.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/dye_colorizer_yellow.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_agender.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_aroace.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_aromantic.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_asexual.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_bisexual.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_demiboy.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_demigirl.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_gay.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_genderfluid.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_genderqueer.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_intersex.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_lesbian.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_nonbinary.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_plural.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/pride_colorizer_transgender.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/misc/uuid_colorizer.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/akashic_bookshelf.json (88%) create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/directrix/empty.json (88%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/edified_button.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/edified_door.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/edified_pressure_plate.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/edified_trapdoor.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/redstone/impetus/empty.json (88%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/abacus.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/artifact.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/cypher.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/focus.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/focus_rotated.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/jeweler_hammer.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/lens.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/spellbook.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/acacia.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/bamboo.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/birch.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/cherry.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/crimson.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/dark_oak.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/edified.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/jungle.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/mangrove.json (74%) rename {Neoforge/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/mindsplice.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/oak.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/quenched.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/spruce.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/staff/warped.json (74%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/thought_knot.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/advancements => Common/src/generated/resources/data/hexcasting/advancement}/recipes/tools/trinket.json (79%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/root.json (76%) rename Common/src/generated/resources/data/hexcasting/{advancements => advancement}/y_u_no_cast_angy.json (76%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json (77%) create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json (76%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json (76%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json (76%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json (76%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json (77%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json (78%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json (77%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/akashic_bookshelf.json (100%) rename Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json => Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json (60%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/akashic_record.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_bricks.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_bricks_small.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_dust_block.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_edified_leaves.json (59%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_pillar.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_sconce.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/amethyst_tiles.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/ancient_scroll_paper.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/ancient_scroll_paper_lantern.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/aventurine_edified_leaves.json (59%) rename {Neoforge/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/citrine_edified_leaves.json (59%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/directrix/boolean.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/directrix/empty.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/directrix/redstone.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_button.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_door.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_fence.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_fence_gate.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_log.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_log_amethyst.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_log_aventurine.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_log_citrine.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_log_purple.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_panel.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_planks.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_pressure_plate.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_slab.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_stairs.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_tile.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_trapdoor.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/edified_wood.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/impetus/empty.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/impetus/look.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/impetus/redstone.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/impetus/rightclick.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/quenched_allay.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/quenched_allay_bricks.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/quenched_allay_bricks_small.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/quenched_allay_tiles.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/scroll_paper.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/scroll_paper_lantern.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate.json (61%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_amethyst_bricks.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_amethyst_bricks_small.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_amethyst_pillar.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_amethyst_tiles.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_block.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_bricks.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_bricks_small.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_pillar.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/slate_tiles.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/stripped_edified_log.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/blocks/stripped_edified_wood.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/loot_tables => Common/src/generated/resources/data/hexcasting/loot_table}/inject/amethyst_cluster.json (71%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/abacus.json (82%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/ageing_scroll_paper_lantern.json (87%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/akashic_bookshelf.json (80%) rename Fabric/src/generated/resources/data/hexcasting/recipes/akashic_connector.json => Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json (85%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/amethyst_dust_packing.json (71%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/amethyst_dust_unpacking.json (82%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/amethyst_sconce.json (67%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/amethyst_tiles.json (82%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/ancient_scroll_paper.json (87%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/ancient_scroll_paper_lantern.json (73%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/artifact.json (64%) create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/budding_amethyst.json (61%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/directrix_boolean.json (60%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/directrix_redstone.json (60%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/impetus_look.json (58%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/impetus_rightclick.json (57%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/impetus_storedplayer.json (60%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/brainsweep/quench_allay.json (63%) rename Neoforge/src/generated/resources/data/hexcasting/recipes/lens.json => Common/src/generated/resources/data/hexcasting/recipe/cypher.json (70%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/decompose_quenched_shard/charged.json (85%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/decompose_quenched_shard/dust.json (86%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/decompose_quenched_shard/shard.json (85%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/default_colorizer.json (80%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/directrix/empty.json (83%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_black.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_blue.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_brown.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_cyan.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_gray.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_green.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_light_blue.json (76%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_light_gray.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_lime.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_magenta.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_orange.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_pink.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_purple.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_red.json (77%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_white.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dye_colorizer_yellow.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dynamicseal_focus.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/dynamicseal_spellbook.json (100%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_button.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_door.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_fence.json (78%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_fence_gate.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_panel.json (79%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_planks.json (81%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_pressure_plate.json (69%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_slab.json (73%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_stairs.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_tile.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_trapdoor.json (73%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/edified_wood.json (74%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/focus.json (69%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/focus_rotated.json (69%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/impetus/empty.json (84%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/jeweler_hammer.json (72%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/lens.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_agender.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_aroace.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_aromantic.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_asexual.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_bisexual.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_demiboy.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_demigirl.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_gay.json (77%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_genderfluid.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_genderqueer.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_intersex.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_lesbian.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_nonbinary.json (75%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_plural.json (76%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/pride_colorizer_transgender.json (74%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/scroll.json (79%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/scroll_medium.json (77%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/scroll_paper.json (82%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/scroll_paper_lantern.json (75%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/scroll_small.json (77%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/slate.json (80%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/slate_block.json (82%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/slate_block_from_slates.json (72%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/spellbook.json (77%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/acacia.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/bamboo.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/birch.json (82%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/cherry.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/crimson.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/dark_oak.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/edified.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/jungle.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/mangrove.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/mindsplice.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/oak.json (82%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/quenched.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/spruce.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/staff/warped.json (81%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/stonecutting/amethyst_tiles.json (58%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/stripped_edified_wood.json (73%) rename {Fabric/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/sub_sandwich.json (83%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/thought_knot.json (80%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/trinket.json (69%) rename {Neoforge/src/generated/resources/data/hexcasting/recipes => Common/src/generated/resources/data/hexcasting/recipe}/uuid_colorizer.json (81%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/brainswept_circle_components.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/cheap_to_break_block.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/directrices.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/edified_logs.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/edified_planks.json (100%) create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/impeti.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/blocks => Common/src/generated/resources/data/hexcasting/tags/block}/water_plants.json (100%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json (100%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json (100%) rename {Neoforge => Common}/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/brainswept_circle_components.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/directrices.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/edified_logs.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/edified_planks.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/grants_root_advancement.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/impeti.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/phial_base.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/seal_materials.json (100%) rename {Neoforge/src/generated/resources/data/hexcasting/tags/items => Common/src/generated/resources/data/hexcasting/tags/item}/staves.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/buttons.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/crystal_sound_blocks.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/doors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/fence_gates.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/fences.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/leaves.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/logs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/logs_that_burn.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/mineable/axe.json (95%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/mineable/hoe.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/mineable/pickaxe.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/mineable/shovel.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/planks.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/pressure_plates.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/slabs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/stairs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/trapdoors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/unstable_bottom_center.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_buttons.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_doors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_fences.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_pressure_plates.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_slabs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_stairs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/blocks => Common/src/generated/resources/data/minecraft/tags/block}/wooden_trapdoors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/buttons.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/doors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/leaves.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/logs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/logs_that_burn.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/planks.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/slabs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/trapdoors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/wooden_buttons.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/wooden_doors.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/wooden_pressure_plates.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/wooden_slabs.json (100%) rename {Neoforge/src/generated/resources/data/minecraft/tags/items => Common/src/generated/resources/data/minecraft/tags/item}/wooden_trapdoors.json (100%) rename {Neoforge/src/generated/resources/data/forge => Common/src/generated/resources/data/neoforge}/loot_modifiers/global_loot_modifiers.json (95%) rename Common/src/main/resources/assets/hexcasting/textures/block/{slate.png => slate_block.png} (100%) delete mode 100644 Fabric/src/generated/resources/.cache/19f2b40f78e342d65a8cb499a41e3fcb2eadaca3 delete mode 100644 Fabric/src/generated/resources/.cache/2ba8da2cf2d44ff18dc72cc891b094eca6836a5c delete mode 100644 Fabric/src/generated/resources/.cache/3cb4ab563deee432e7d307024048f57946bafb1c delete mode 100644 Fabric/src/generated/resources/.cache/812fdb58b7018b2d5c5af7da57a2b1857fa66794 delete mode 100644 Fabric/src/generated/resources/.cache/c70ef2fe5da52437c1f53bcc9ea0e416f16bcc0b delete mode 100644 Fabric/src/generated/resources/data/c/tags/items/amethyst_dusts.json delete mode 100644 Fabric/src/generated/resources/data/c/tags/items/gems.json delete mode 100644 Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_block.json delete mode 100644 Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json delete mode 100644 Fabric/src/generated/resources/data/create/tags/blocks/brittle.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/abacus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/artifact.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/cypher.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/directrix/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_door.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_slab.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_tile.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/focus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/focus_rotated.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/impetus/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/scroll.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/scroll_medium.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/scroll_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/spellbook.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/staff/acacia.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/staff/cherry.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/thought_knot.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/trinket.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/action/can_start_enlighten.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/action/per_world_pattern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/action/requires_enlightenment.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/directrices.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/impeti.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/directrices.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/edified_logs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/impeti.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/phial_base.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/seal_materials.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/items/staves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/fences.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/leaves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/logs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/planks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/stairs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/leaves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/logs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/planks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/wooden_doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json delete mode 100644 Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_block.json delete mode 100644 Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_connector.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/cypher.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/default_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/quenched.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json diff --git a/Common/src/generated/resources/.cache/8f7cd5c924d3264b7777ef1696459761f9a70902 b/Common/src/generated/resources/.cache/8f7cd5c924d3264b7777ef1696459761f9a70902 deleted file mode 100644 index 65cd7f4b28..0000000000 --- a/Common/src/generated/resources/.cache/8f7cd5c924d3264b7777ef1696459761f9a70902 +++ /dev/null @@ -1,276 +0,0 @@ -// 1.20.1 2024-12-10T14:26:44.916295 Item Models: hexcasting -2fc68dcd6d73da3deaa6a33240dd9160a2b79592 assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json -d59af7a48b20b210240b26115fb172d6202f9254 assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json -a62eeebbca2d145c22f25725bd848ed4d673cefa assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json -90e14c7ae44f667810fa5d31af5fd02cb575c13a assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json -669d9348f4581dae45c35268a760675509a89a29 assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json -bb65f6b36336fb4746e749a2b248e521ff24f901 assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json -39b54b608cdf5e959a5c115379e45aaf590a254a assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json -da0aee7c9516804372262165dc5aab16bd1c6ce6 assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json -bacd99e8c24b9ce004e8aeff509cca4b971f3ed9 assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json -1b272b737dea8a856c63e253359863dff7ec7e54 assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json -9840fe9648aedd03ecda485e7c6466bbe2a418ba assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json -71abe574694be3f0be75433068bae0489bae5055 assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json -9af2754cb1e53eeaa85618cf92651b4878cf62b1 assets/hexcasting/models/block/quenched_allay_0.json -de4ff723b4332d4e26bd01f74e0485e28c9a2178 assets/hexcasting/models/block/quenched_allay_1.json -4c29163e07f3a903017e38a9cc102f4b37db20b1 assets/hexcasting/models/block/quenched_allay_2.json -487d34cd8e70b3e468337228b74af5c1b4d14c53 assets/hexcasting/models/block/quenched_allay_3.json -f2156b3a7041cf99891b528393db64c6b9ca1a4f assets/hexcasting/models/item/abacus.json -19730853397b109cfedd0c3bbda83d5de6cd15b9 assets/hexcasting/models/item/akashic_record.json -8c735feff09d46d00ed681311f46f61a50cfdc9b assets/hexcasting/models/item/amethyst_dust.json -fbb8706993fbc3246c56b9f3eb274ff8968b70f8 assets/hexcasting/models/item/amethyst_pillar.json -533a859174052a332de069b2ffeaf0106d132b9a assets/hexcasting/models/item/ancient_cypher.json -71a7968e43fbb872ee52315a3ee738d0b3fd1a69 assets/hexcasting/models/item/ancient_cypher_0_filled.json -0f0c627d7ed0e8a7e3666ca80ddc13b280d6ce9f assets/hexcasting/models/item/ancient_cypher_1.json -097b8ecfb34df710ca4b396d3a5df7722ecc3596 assets/hexcasting/models/item/ancient_cypher_1_filled.json -9fdde927e7e8b06221aef34a6a6b22d0b790f297 assets/hexcasting/models/item/ancient_cypher_2.json -93257ad393b751931539a5641d4430a4631e95f9 assets/hexcasting/models/item/ancient_cypher_2_filled.json -4af6234e24031ee0989282c8435fe07e85b02771 assets/hexcasting/models/item/ancient_cypher_3.json -41760f3c89d8dc94c515b0ab8220ecf996710a3c assets/hexcasting/models/item/ancient_cypher_3_filled.json -4df83ae775400ca2d480bfb3621abcf58d4d7352 assets/hexcasting/models/item/ancient_cypher_4.json -d21eb7093c0231015808a8b51b27857da1748431 assets/hexcasting/models/item/ancient_cypher_4_filled.json -e2b4e2ac4ad4fa4b490e1774a565a26fb840c474 assets/hexcasting/models/item/ancient_cypher_5.json -4555e5de80047ffa4e72a4a98eb51437a95e7291 assets/hexcasting/models/item/ancient_cypher_5_filled.json -420840b5761fcddbdd10186f3127bc7589badc46 assets/hexcasting/models/item/ancient_cypher_6.json -55c08581a2e8c7134d63b38226bddafff0fba3ae assets/hexcasting/models/item/ancient_cypher_6_filled.json -2731192f0c7a9a8d45ba4fcd8d1de60bade0b49e assets/hexcasting/models/item/ancient_cypher_7.json -7ba3015d79601f1c8238dbac4a45e525e3589f16 assets/hexcasting/models/item/ancient_cypher_7_filled.json -87e7ee44cdd0808a3dd72babfd1db716df2bcdfe assets/hexcasting/models/item/artifact.json -1cd1b4d002d1a9a044ceab7cca842e4a2b7bd2f4 assets/hexcasting/models/item/artifact_0_filled.json -4709e65d8e74cf45b3ba014bdf70373728cccc78 assets/hexcasting/models/item/artifact_1.json -13915cc6b9ebbdce7043939c32c308bf129c2099 assets/hexcasting/models/item/artifact_1_filled.json -5434775bd88a654db6b2d09ab5f74a93a1983528 assets/hexcasting/models/item/artifact_2.json -a084bdd9039f5a16183d0cf70d744bf29a3c8760 assets/hexcasting/models/item/artifact_2_filled.json -206548428fd1a142442469c8b65fae24a1b50af6 assets/hexcasting/models/item/artifact_3.json -d6de8ae6a4d546aac12489cae386731490040c5e assets/hexcasting/models/item/artifact_3_filled.json -a0dbd0d40833d91dd33036686cd58494572cbe42 assets/hexcasting/models/item/artifact_4.json -86f1f0c0cbae34010ec9eca723db64303d5f5d5f assets/hexcasting/models/item/artifact_4_filled.json -e822e463834b9bf4433defbace06cc586629da95 assets/hexcasting/models/item/artifact_5.json -a44fec20b346e1e660027d204b42df312a310086 assets/hexcasting/models/item/artifact_5_filled.json -c499e86bb5b5bc2fe29914ce14832212ca23df10 assets/hexcasting/models/item/artifact_6.json -ccb8a41fdd4bc1b493a11cfa2ea4a39b7f7c3888 assets/hexcasting/models/item/artifact_6_filled.json -6461c5261ec1eb92a608bd2db420b1e5b0c3591a assets/hexcasting/models/item/artifact_7.json -373617635cf75ee236da52eb5b9f341d2b77eac3 assets/hexcasting/models/item/artifact_7_filled.json -c77fe07e43f7a46e04f16e43054588cdcdf4c01e assets/hexcasting/models/item/battery.json -ec7c3a51882a432185fdbb6a449e66165b6a4c4c assets/hexcasting/models/item/charged_amethyst.json -3ed3e3d86dcbc29d2e6fb59b9c6a7e455e9a3332 assets/hexcasting/models/item/cherry_staff.json -c64ed609ece68994ce23dd2809145040bce13579 assets/hexcasting/models/item/conjured_block.json -c64ed609ece68994ce23dd2809145040bce13579 assets/hexcasting/models/item/conjured_light.json -c8da4227db3c80e3e2e7f2fb2ae2649656429d68 assets/hexcasting/models/item/creative_unlocker.json -afe7113b8411c64651b679ea6b4e41bf36ab38c3 assets/hexcasting/models/item/cypher.json -3b9442e76a05b7fa70f9fb30186f94b1ba08a69b assets/hexcasting/models/item/cypher_0_filled.json -2c240a69627de02937aa601faa2578adc7d44906 assets/hexcasting/models/item/cypher_1.json -5dc34d91f0d6db16d537dd93345ccca8fe4f6aaa assets/hexcasting/models/item/cypher_1_filled.json -29e2a1e5c0e518e5edf0c6c25a5259c361ece478 assets/hexcasting/models/item/cypher_2.json -af274f590258b97dadf050d925c1187ee6e35d77 assets/hexcasting/models/item/cypher_2_filled.json -89a21d5aeef41fe788e799b89c7f80a26f09abed assets/hexcasting/models/item/cypher_3.json -e80d8c33a0b4ca69b157888fbc5f5660ba9c411d assets/hexcasting/models/item/cypher_3_filled.json -fcc1b8d2b97207af1f8c06061e170b11949bcf51 assets/hexcasting/models/item/cypher_4.json -7554e24b6f52c6b8db358e0cb5449449752a5808 assets/hexcasting/models/item/cypher_4_filled.json -85cd0adf020150c69ca7fec1f5200b027fd01d09 assets/hexcasting/models/item/cypher_5.json -1010ce5e3def445462ab69c4289f3ba94f50eacc assets/hexcasting/models/item/cypher_5_filled.json -d5b444a363c101779a01f7298d55161a8271c742 assets/hexcasting/models/item/cypher_6.json -6f4d37c92c0d43da6d20705955e9b7cee83ed612 assets/hexcasting/models/item/cypher_6_filled.json -69e61ff1976e99c43a17c7b1e0591829ac44a4d6 assets/hexcasting/models/item/cypher_7.json -41ee99d878ec66f480ebcbacc65f16696c31d161 assets/hexcasting/models/item/cypher_7_filled.json -c6523de66cbfae3a1e6361c635cc693a0a089bb3 assets/hexcasting/models/item/default_colorizer.json -113c51af571a92009f5f687a82e10bc5ce97b010 assets/hexcasting/models/item/dye_colorizer_black.json -b5a04716775ba2e1b137abc513025b2f1065e5d1 assets/hexcasting/models/item/dye_colorizer_blue.json -0bb3afbd937b2e07523a581f6e3f389e11078595 assets/hexcasting/models/item/dye_colorizer_brown.json -6da7c3fb38f79e87506da06befe18730187e5183 assets/hexcasting/models/item/dye_colorizer_cyan.json -1afb238702f40275c30262ea349d5c8a590c314d assets/hexcasting/models/item/dye_colorizer_gray.json -0daf8bf5f98ed6dccb701cc4c8a4de3f3a53aed0 assets/hexcasting/models/item/dye_colorizer_green.json -82bc0bf11d7f02f18fef8f04ba5aed13c88e5556 assets/hexcasting/models/item/dye_colorizer_light_blue.json -d8ac48c96b5bc37525a5b26ce451e53229f83b7e assets/hexcasting/models/item/dye_colorizer_light_gray.json -317ac0b46bb76d6df66e350fd824cd18b2af2776 assets/hexcasting/models/item/dye_colorizer_lime.json -0290be48770c6c3b11e7d99c677c6a590168168d assets/hexcasting/models/item/dye_colorizer_magenta.json -88b74eda6ddf728301c73e683f2c416139b956c8 assets/hexcasting/models/item/dye_colorizer_orange.json -de7f7dec75da3170672de5c46a87ff47297db12b assets/hexcasting/models/item/dye_colorizer_pink.json -9bec032a4f17aeaa68f5dc88bd43de97a476df21 assets/hexcasting/models/item/dye_colorizer_purple.json -63b7438b1ab3ec9be3213d2964914c42c838643e assets/hexcasting/models/item/dye_colorizer_red.json -79f4120a9571ecf8be1767dfb41c4604f2ab985b assets/hexcasting/models/item/dye_colorizer_white.json -667ea00dbc366ee41e97f21c099001440212d183 assets/hexcasting/models/item/dye_colorizer_yellow.json -f867a3b2bbc117a782d49f0819b60f4727d1f483 assets/hexcasting/models/item/edified_button.json -c9faada6299f388afc2d2798843d2b45159950d1 assets/hexcasting/models/item/edified_door.json -32f6086df25000e0af341e49ab60fa214f0c4a52 assets/hexcasting/models/item/edified_fence.json -12b4c0ce637123f5a39c00c4c973958f5106eecf assets/hexcasting/models/item/edified_fence_gate.json -7f22e012a844cc2c5e30b0fcbdc2e7e4afac1c40 assets/hexcasting/models/item/edified_log.json -8197108bfba4b5963e3c0b1e76a04b8a0d6aae03 assets/hexcasting/models/item/edified_log_amethyst.json -7d6bd7d94d4417f85444c387fc34d9b6947858f1 assets/hexcasting/models/item/edified_log_aventurine.json -c13f4b5b9e57224107c7f7c00928a6873b437245 assets/hexcasting/models/item/edified_log_citrine.json -2415591623223d1cb1a4ac2aeb2d1337694fa9a9 assets/hexcasting/models/item/edified_log_purple.json -6b2c9d4aca0c869d7e18707c22b00c14e1d30f0c assets/hexcasting/models/item/edified_pressure_plate.json -31b4d60ff15a6d6de7aecb6feeba25a366bba2fd assets/hexcasting/models/item/edified_slab.json -2584421c2e9e1cdf22a703018b54cf449613d7d9 assets/hexcasting/models/item/edified_stairs.json -ae58c5b7c304d33cbde60caf44a4c4ee4ec1a633 assets/hexcasting/models/item/edified_trapdoor.json -084183e4351973c8165f6f459c0f0dba2463d957 assets/hexcasting/models/item/edified_wood.json -1943e85c2ce9a40b0bbe0e4ffca2b6a968287091 assets/hexcasting/models/item/focus.json -7a19f436fc9e8d0e0e01b4404f326eb48404855a assets/hexcasting/models/item/focus_0_filled.json -88615c49de2c14a19da34431724401652e94be79 assets/hexcasting/models/item/focus_0_sealed.json -8099bd2e0afe118fa013b9d635ad47ffaab556bd assets/hexcasting/models/item/focus_1.json -340001b99100480d06cab60229d4af308be3c4ac assets/hexcasting/models/item/focus_1_filled.json -e0f8fef2e2d8d0e9168d10327d55115293ad2ae7 assets/hexcasting/models/item/focus_1_sealed.json -3578e575573fc52c4e819bcc5e207ce7a4e0f808 assets/hexcasting/models/item/focus_2.json -3e31f3b513df519f5e2e2eb4747faa02b89db67d assets/hexcasting/models/item/focus_2_filled.json -6724475ce4ef36295839f95098035889e57896f2 assets/hexcasting/models/item/focus_2_sealed.json -cb22fbb79432527d828475aa457c9c6fdb78bbff assets/hexcasting/models/item/focus_3.json -54f5d42d7104297162cc9b322ff477d568656e26 assets/hexcasting/models/item/focus_3_filled.json -283fcd45c639953802f8345c20ec45d9aa8c463d assets/hexcasting/models/item/focus_3_sealed.json -7818903b0ec7c7926e040e4d634495a7699e6deb assets/hexcasting/models/item/focus_4.json -e2f8f78c5009deb7368e44af09d90c1da075240d assets/hexcasting/models/item/focus_4_filled.json -abdeb1a3563f983bd09db8e7c666ddbdffc3903b assets/hexcasting/models/item/focus_4_sealed.json -9b687b3c191c5802bc39613ae705d7313139b310 assets/hexcasting/models/item/focus_5.json -a00edbeef7c2d828f4f16ed43d5e3a53e9674787 assets/hexcasting/models/item/focus_5_filled.json -c40bd0246003cd2c1824ad61ad718f5959dc6e10 assets/hexcasting/models/item/focus_5_sealed.json -3c77a283be7249e00e1947676276f7484b00ea83 assets/hexcasting/models/item/focus_6.json -732c8201606b3c510c0467fc3840aa1475f7b56f assets/hexcasting/models/item/focus_6_filled.json -9bf849da1973419685e4ed36a823285b154b143f assets/hexcasting/models/item/focus_6_sealed.json -759efbfda9f003e920e37b3b8f0306dd20562e94 assets/hexcasting/models/item/focus_7.json -b2702eb139b47fcdfd3ef268bbc9700eeaae82f3 assets/hexcasting/models/item/focus_7_filled.json -1e89b03a5f3a860dae1864c4dbfe855564f89705 assets/hexcasting/models/item/focus_7_sealed.json -6ec61fea7d8c49cc0c45b64857fd926451b4845f assets/hexcasting/models/item/jeweler_hammer.json -abfc028c974a02780aed3d7a5859352503bbd920 assets/hexcasting/models/item/lens.json -a34a6d777ae265c7e49c8bb23c15f04359236544 assets/hexcasting/models/item/lore_fragment.json -a3e134b79977545049da01671f3a1bd636d14789 assets/hexcasting/models/item/old_staff.json -82fa0a2bb17e40c0b3f826e97b2e95445ec24ab8 assets/hexcasting/models/item/patchouli_book.json -91186c79af073cc390a1f1e6712540e1a49b716e assets/hexcasting/models/item/phial_larger_0.json -548d6999c6b5cb2c5b8d36d190fc849632f9f8ea assets/hexcasting/models/item/phial_larger_1.json -3162e3b88e59a9ab4b9df345724a0964db695688 assets/hexcasting/models/item/phial_larger_2.json -4e8f120d8472135ba1d8c332848fd0cc4c9ef1a0 assets/hexcasting/models/item/phial_larger_3.json -7b0d93186cd60cf31049512ca1147262a2bf203f assets/hexcasting/models/item/phial_larger_4.json -8943ca4912ab23d507725744f675ddcc56ccf1a9 assets/hexcasting/models/item/phial_largest_0.json -e20faba33418dac72ff3ad360eeb6fce3fce2728 assets/hexcasting/models/item/phial_largest_1.json -f0623e9b9192098dff982fabf1e598a27f96b7a8 assets/hexcasting/models/item/phial_largest_2.json -911736f4e2e3d825fb01f13dd32bf0108b68df99 assets/hexcasting/models/item/phial_largest_3.json -86d475f4c5bda63a564604e828f408ac6769e9eb assets/hexcasting/models/item/phial_largest_4.json -d69d10e6cb967b98b3294cc86174182c671de671 assets/hexcasting/models/item/phial_large_0.json -9b7805bec9481956b0ccc6c65dd8e02d3b3cdf54 assets/hexcasting/models/item/phial_large_1.json -596a866a0fac7cfe916d1e78f2a5f20856493c62 assets/hexcasting/models/item/phial_large_2.json -34aacc4fb999949e455d01548546a52eafb97e24 assets/hexcasting/models/item/phial_large_3.json -3a6f6b51e72a040d039abae580ef5db2a6c8101d assets/hexcasting/models/item/phial_large_4.json -d5a3a98a51146a94b95ea84d49236fc83b08b807 assets/hexcasting/models/item/phial_medium_0.json -2165d19e514a3358fb8e3ceb91efd2fbc47ddebd assets/hexcasting/models/item/phial_medium_1.json -89933a425604fb6c0599848df3fef62ab07ea5a2 assets/hexcasting/models/item/phial_medium_2.json -1088d2440c7958a37509c753d74d8cfd383d05ca assets/hexcasting/models/item/phial_medium_3.json -a3d2dc8be83802e4444e0152904b2d48accd196c assets/hexcasting/models/item/phial_medium_4.json -b7492bc7b30d0890cfc38392e538b439a03ebc32 assets/hexcasting/models/item/phial_small_0.json -69553fbc4c9e0bf54fcc17f108f43baeabe66d2a assets/hexcasting/models/item/phial_small_1.json -e9dc7a0685fa9abfb2c2555cdb2eb4ef8d4920a8 assets/hexcasting/models/item/phial_small_2.json -73125d101de003bd1d48768c2381566b5687d002 assets/hexcasting/models/item/phial_small_3.json -ead3b78e464b2e2a259c781076bdf50a50686b87 assets/hexcasting/models/item/phial_small_4.json -6a384e599fdc2d798f175e86ea03147c25a47a51 assets/hexcasting/models/item/pride_colorizer_agender.json -c39aeb9c8b6f5b8a0510a54a9f87154b8187ba21 assets/hexcasting/models/item/pride_colorizer_aroace.json -abe3bc0e065fe4250835998871c08066b3e7ae49 assets/hexcasting/models/item/pride_colorizer_aromantic.json -d34570c2485646768ec2d47bfc035c704f9b0ab8 assets/hexcasting/models/item/pride_colorizer_asexual.json -fe6a5142ad799343c287a0566193fa20469a377f assets/hexcasting/models/item/pride_colorizer_bisexual.json -f2d2ed03d3bc7d2526d5276b348dc05f7c3585a3 assets/hexcasting/models/item/pride_colorizer_demiboy.json -2e9008cfb1a23e793d17ec521704f06a7f235a3a assets/hexcasting/models/item/pride_colorizer_demigirl.json -708698514fb6db04a30bca299c8f1ca32aad795b assets/hexcasting/models/item/pride_colorizer_gay.json -a377c0f71783296af01e91605bb821ef8554bdef assets/hexcasting/models/item/pride_colorizer_genderfluid.json -d60b723c44183b59cbadfd02a911dab5e89e0e61 assets/hexcasting/models/item/pride_colorizer_genderqueer.json -3322b15f5dc59cfb0008ff52648af1420890d5c9 assets/hexcasting/models/item/pride_colorizer_intersex.json -061fd86ffe47e0886783c8a20e8723ecac372604 assets/hexcasting/models/item/pride_colorizer_lesbian.json -5ebdcf6777381497fd1accf88832f8f1f2bfcc99 assets/hexcasting/models/item/pride_colorizer_nonbinary.json -6253bab7bd9162f75782c5bc899f46cd941d01ad assets/hexcasting/models/item/pride_colorizer_pansexual.json -c67e74e2a323872c3b34b113df99da8b77a501c6 assets/hexcasting/models/item/pride_colorizer_plural.json -7c4191ec2479b0a67e578da49d459deea8294ec4 assets/hexcasting/models/item/pride_colorizer_transgender.json -5038e069909e2dcf8664bcde81b229c8e27191ae assets/hexcasting/models/item/quenched_allay.json -6bef352b86abdaf9ce4f4942f01e746aa7cc62a2 assets/hexcasting/models/item/quenched_allay_bricks.json -c9aab9c7c0483766c670cfda7916323473e3c097 assets/hexcasting/models/item/quenched_allay_bricks_small.json -a8859c93236b88f9ed46a4957f5723965ce04e03 assets/hexcasting/models/item/quenched_allay_shard.json -812d5b11011c52dc5ce97040f9df5125c0542d10 assets/hexcasting/models/item/quenched_allay_tiles.json -8105007d186fe2c6bea6958dd85d1b2ed3cecb58 assets/hexcasting/models/item/quenched_shard_0.json -aef7d4b759bcc8a1d5b886b8a0170657e447a8d8 assets/hexcasting/models/item/quenched_shard_1.json -4a08374ef00de51381df9659488cb305e7c8674f assets/hexcasting/models/item/quenched_shard_2.json -181aac0f66e5c3937f49da3f5d577f1c8045c635 assets/hexcasting/models/item/quenched_shard_3.json -1ac1d158da25a8f8ec4b8771445d1ec9d42e9519 assets/hexcasting/models/item/scroll.json -ae2a8b6eb8a4ef17926e20c6982bc01120ff32b7 assets/hexcasting/models/item/scroll_ancient_large.json -7478e4b91169a3ab9def5af8662db9696eb33a34 assets/hexcasting/models/item/scroll_ancient_medium.json -e5e1c3116c97deeee0ab5e87178043f4f1b53bea assets/hexcasting/models/item/scroll_ancient_small.json -304b6c635b289565c871f7e8389f59baf93d66ea assets/hexcasting/models/item/scroll_medium.json -6f9d5d0ab5c9cf6abb3303f2e8d4993693eadb77 assets/hexcasting/models/item/scroll_pristine_large.json -300063a2245b419e360fc5e91827708e2ff5f79a assets/hexcasting/models/item/scroll_pristine_medium.json -e4dd5a16b9914044c1721df150e02b657835d97b assets/hexcasting/models/item/scroll_pristine_small.json -c809785d09b2545dac68d4a10b1e576454dd51e7 assets/hexcasting/models/item/scroll_small.json -9b82beea7667a8f9de3d1e8df136bb2034ed51a8 assets/hexcasting/models/item/slate.json -973361a2dd2ba5f3cd9fe2104f7ead43b085acc8 assets/hexcasting/models/item/slate_amethyst_pillar.json -612d4c65fb907c75975659edf00c7d92bf1b43d8 assets/hexcasting/models/item/slate_blank.json -96c85c64446072761910774b36924436c637faab assets/hexcasting/models/item/slate_pillar.json -e6452f95b60240e0067769d7f32a0b9fa7718a1b assets/hexcasting/models/item/slate_written.json -34abd8e443c028eeb24535b685cb3876f7235c23 assets/hexcasting/models/item/spellbook.json -2c23e0ce8a59f0f143ab514f46251e39fae39d6e assets/hexcasting/models/item/spellbook_0_filled.json -e8264e67b895bb61b52b936968b120c064507a26 assets/hexcasting/models/item/spellbook_0_sealed.json -b94a2beab80e87ed3f7e6004f70a3919c64272b4 assets/hexcasting/models/item/spellbook_1.json -158148d51abd63a93123fa7f2e2bce45d83d237f assets/hexcasting/models/item/spellbook_1_filled.json -c2fc066cee9a1e2ddf5a4507cf90b88a65d32028 assets/hexcasting/models/item/spellbook_1_sealed.json -85adbb3604db5a2e41877e2085d445df5622b549 assets/hexcasting/models/item/spellbook_2.json -83336c6e8bac94473e2f420084e544feef016d52 assets/hexcasting/models/item/spellbook_2_filled.json -a585cd9359896cd5ec62e4ccc28649170b2c8875 assets/hexcasting/models/item/spellbook_2_sealed.json -62e70d832eae787e0f086bf2f959eca19bfdfcd4 assets/hexcasting/models/item/spellbook_3.json -b312e3a09356f92d4f47b89f319e5ceeadb565ae assets/hexcasting/models/item/spellbook_3_filled.json -6ec3b9c77f6c7c4953d06c69bd5c06fc90e51d3d assets/hexcasting/models/item/spellbook_3_sealed.json -411ee9b98ec41a11d4026863332f0c65891807fe assets/hexcasting/models/item/spellbook_4.json -99aea30de3172c435b9a85a8ccce599251ed2722 assets/hexcasting/models/item/spellbook_4_filled.json -5881069c0b7e0e2bbaf07d8016fe4bcacce2e5e8 assets/hexcasting/models/item/spellbook_4_sealed.json -c4a41996c971ab44175cb8be5247b595836973cb assets/hexcasting/models/item/spellbook_5.json -4b9a2d0f4942fff48f31e58bde673863303396ad assets/hexcasting/models/item/spellbook_5_filled.json -d47f10973fa2660230f2249b3c009d4c7e4fc33f assets/hexcasting/models/item/spellbook_5_sealed.json -2adb81185491d908b5059c5a8df2a72c0913406b assets/hexcasting/models/item/spellbook_6.json -1d98011ce5c424be3488ac613d04f09572f85120 assets/hexcasting/models/item/spellbook_6_filled.json -53f092cea6f0f27d1b41a4be4403aed908768d2f assets/hexcasting/models/item/spellbook_6_sealed.json -a1dc5817c7c62e0d6e4c1ca1c5bfba6973a9b253 assets/hexcasting/models/item/spellbook_7.json -e43bfc743664dc23cbb2aaa4a66072ce1bbb5c2f assets/hexcasting/models/item/spellbook_7_filled.json -32210f56cb33747d9890de18300ae936cc8b0f77 assets/hexcasting/models/item/spellbook_7_sealed.json -f791313aa7bb01b418676ffaeeb09286ca9bddff assets/hexcasting/models/item/staff/acacia.json -e1f5949b5ea4e5056909d9a74f4c578114d905f1 assets/hexcasting/models/item/staff/bamboo.json -19acf04c62128275b8fb468e89a30ab94d6e5a1a assets/hexcasting/models/item/staff/birch.json -3ed3e3d86dcbc29d2e6fb59b9c6a7e455e9a3332 assets/hexcasting/models/item/staff/cherry.json -244ba74a82a188df6fd258affcdd4b1a7320e617 assets/hexcasting/models/item/staff/crimson.json -ee609f36641d4689512b54aa343eafd1d53881e6 assets/hexcasting/models/item/staff/dark_oak.json -eb9d51207fddad95d375ccbe0f96df12893312d0 assets/hexcasting/models/item/staff/edified.json -99e1283ee4ba1baccd452e909bf61417b7f2f57a assets/hexcasting/models/item/staff/jungle.json -529b269c10e8da7af7974cf1eb539af30dbe9766 assets/hexcasting/models/item/staff/mangrove.json -ede4e45b2744ec8b457f8964708d80fe9f4711db assets/hexcasting/models/item/staff/mindsplice.json -3ae310c995e8211b212babc2b4ed1a4b6185a383 assets/hexcasting/models/item/staff/oak.json -6ced9d423830b4a095ecb1076f3d89fa831f24fd assets/hexcasting/models/item/staff/quenched.json -898635b56d406e3be71bf87e2e2a7953388c6d3e assets/hexcasting/models/item/staff/quenched_0.json -781f2aec9c3d1d74ef44706ad76782ea4c5c7064 assets/hexcasting/models/item/staff/quenched_1.json -2d3fe60a6bab47692fc9fb32c76ff7b0c44a731f assets/hexcasting/models/item/staff/quenched_2.json -91e45480e12c73a1d3c6f0970b813de3bc8a7df7 assets/hexcasting/models/item/staff/quenched_3.json -49d928184c2e6624b0b217615d54b1d08da133ff assets/hexcasting/models/item/staff/spruce.json -09100a64a4c1e14dc2078fc1060122b0a52ca497 assets/hexcasting/models/item/staff/warped.json -d6ebc87cb0fa6f86bee3a4eade7329ebb0cf2d38 assets/hexcasting/models/item/stripped_edified_log.json -ea3f18f75776022127f3a108119e3f7a5c211c0f assets/hexcasting/models/item/stripped_edified_wood.json -0a100b64e77394606018320bbc5752a546fe0af4 assets/hexcasting/models/item/sub_sandwich.json -6a7f5af82cf8ec72c3457ef4c1ae11a76717bf88 assets/hexcasting/models/item/thought_knot.json -93b2191ffab47003f661b75a85cd833ec64f0c15 assets/hexcasting/models/item/thought_knot_written.json -9e4d326d8339db5d7a627a14630e6c0b2fa32ba6 assets/hexcasting/models/item/trinket.json -dba1f5c24852f756280a5d20c3327ea3825c083a assets/hexcasting/models/item/trinket_0_filled.json -e666a8f88dce284d5026f61814a19c5c8d49eda5 assets/hexcasting/models/item/trinket_1.json -35c7c9f46b05dc05002ac77f94b33f8da97238a1 assets/hexcasting/models/item/trinket_1_filled.json -678a892654958f87400c4d9afb1c5ed47692b77b assets/hexcasting/models/item/trinket_2.json -d8e372e768ca59566633f720ef7816eb34b13966 assets/hexcasting/models/item/trinket_2_filled.json -f8a08620915d5f1756b04c4e92d4e0324d381998 assets/hexcasting/models/item/trinket_3.json -cfc0260102aa161e893b0300ba6941c724cada9f assets/hexcasting/models/item/trinket_3_filled.json -d01e9a46398df5da17f651129b4c4c597cf1726c assets/hexcasting/models/item/trinket_4.json -bb6347ea5701bbccfc713f695f3722d218c52af2 assets/hexcasting/models/item/trinket_4_filled.json -90235641f09e4b1923c217f3c977427391daed6c assets/hexcasting/models/item/trinket_5.json -684800b5a011fe247f42ebc4829033a72030c55c assets/hexcasting/models/item/trinket_5_filled.json -d912708aa8de120d4598a62276f333ac096cdacb assets/hexcasting/models/item/trinket_6.json -24ad9a85ca790205f3e9e62ecb60bc8e50ac47fb assets/hexcasting/models/item/trinket_6_filled.json -b9d891572f572d76c0c0aef0afc3d3cb80f72c30 assets/hexcasting/models/item/trinket_7.json -4a8b82a628a3c4b16c4a45d3689799c8d9cf8bf8 assets/hexcasting/models/item/trinket_7_filled.json -c6523de66cbfae3a1e6361c635cc693a0a089bb3 assets/hexcasting/models/item/uuid_colorizer.json -c0af5573a4acb5eeacf49ab309d32b6f90ea8a5d assets/hexcasting/models/staff/acacia.json -1f90275c1d6829f0cdaf71f2c3b234c39cd7290d assets/hexcasting/models/staff/bamboo.json -ac7a4b95db8bde9da23dd4fa76d8086a67e166f8 assets/hexcasting/models/staff/birch.json -f7fca510f1f2c8ab5a90e96fa52abf717e3f836e assets/hexcasting/models/staff/cherry.json -b3f3fae3237d9f65d631fe3a6608ed76d9e0034d assets/hexcasting/models/staff/crimson.json -202de3e9a1bb7cd2ac2781937f4d03afe3947195 assets/hexcasting/models/staff/dark_oak.json -a03d8c4cd52afb51668450f0b47ef278bb75ebec assets/hexcasting/models/staff/edified.json -aab75291c6d8889394ab154cd8cfeed7d1cfe41f assets/hexcasting/models/staff/jungle.json -853408e94e104cd8a3ccbb1ec909f9e6bc9638df assets/hexcasting/models/staff/mangrove.json -7a73fc99460cdff11c717b165f2d5c69a7f96fb6 assets/hexcasting/models/staff/mindsplice.json -41d0396eae3b5511c513b33a186a8a76d3f89a3e assets/hexcasting/models/staff/oak.json -171cc4644ba9df07d79d08b06c482cf7c4c9e873 assets/hexcasting/models/staff/spruce.json -99de51b1596247aa3e5225d6199cbcdc9792c509 assets/hexcasting/models/staff/warped.json diff --git a/Common/src/generated/resources/.cache/d2fe5b6fab5fdc7ee7ca336c062752306bdf6128 b/Common/src/generated/resources/.cache/d2fe5b6fab5fdc7ee7ca336c062752306bdf6128 deleted file mode 100644 index cab0548eff..0000000000 --- a/Common/src/generated/resources/.cache/d2fe5b6fab5fdc7ee7ca336c062752306bdf6128 +++ /dev/null @@ -1,298 +0,0 @@ -// 1.20.1 2023-12-24T17:59:13.7624167 Block States: hexcasting -901e38574bdaa40ea4a0f6e773a88a95d9c03e55 assets/hexcasting/blockstates/akashic_bookshelf.json -32a77ef668198002563d68be35a24fa93c8d454a assets/hexcasting/blockstates/akashic_connector.json -85080ce0a0387583a839e4788517d675a1a35e24 assets/hexcasting/blockstates/akashic_record.json -04221253f80c85d1e19e9688cae5039f257c8d63 assets/hexcasting/blockstates/amethyst_bricks.json -3b4d0e25a44b9ac1582a969bdd435c3d436b8ba8 assets/hexcasting/blockstates/amethyst_bricks_small.json -1919f303e32e4ea395caa26c1e08c65cd2641e95 assets/hexcasting/blockstates/amethyst_dust_block.json -d422119401df3daae032f86ea740b6065a92c44c assets/hexcasting/blockstates/amethyst_edified_leaves.json -25990c171a75164aa282a23acae949b17173426d assets/hexcasting/blockstates/amethyst_pillar.json -276a70fa0e2b94ec3e2218015842b6e315157283 assets/hexcasting/blockstates/amethyst_sconce.json -09b6b22fecc577c4fcf4f7ad49f5d6907ef3d10a assets/hexcasting/blockstates/amethyst_tiles.json -65f7a4db6fa7616374ff814624231aec859d0a71 assets/hexcasting/blockstates/ancient_scroll_paper.json -236496e910696b68480a7b8a977434213fa2197a assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json -2f2eb1130119f6d5f17a98082b727ec7a2ea5334 assets/hexcasting/blockstates/aventurine_edified_leaves.json -fa6dfbc40e5b9b22c01356e8a3848d242c414c02 assets/hexcasting/blockstates/citrine_edified_leaves.json -dc268e4c50e5e155fc5414a5f6b58ce1782bd39b assets/hexcasting/blockstates/conjured_block.json -dc268e4c50e5e155fc5414a5f6b58ce1782bd39b assets/hexcasting/blockstates/conjured_light.json -dffbe9894baae1c0c0dd3377659ce6fcb71ae634 assets/hexcasting/blockstates/directrix/boolean.json -b76cc8a2d66700417046c0dc671badd9af3eb519 assets/hexcasting/blockstates/directrix/empty.json -365eba1c32a7a33698120bc7f12670d29087e999 assets/hexcasting/blockstates/directrix/redstone.json -e125b73869a438bafa7f47cfa4c8d837e2463c6f assets/hexcasting/blockstates/edified_button.json -749d29dc5e11aeba703022dd66aad939d211a3b9 assets/hexcasting/blockstates/edified_door.json -cff9717cca70e2754bb4d0d5e695335e85adf212 assets/hexcasting/blockstates/edified_fence.json -05c8ef11fbde183dc9ed578b65d512df29c3b2f5 assets/hexcasting/blockstates/edified_fence_gate.json -9080ec8bb4142aa3f80775fb017d821585cdfeba assets/hexcasting/blockstates/edified_log.json -b9bbfe3288a699ef51ee0d21ec8e335f811353ca assets/hexcasting/blockstates/edified_log_amethyst.json -fc0f4407ef06ac962b5985db31800e05c8f1d1be assets/hexcasting/blockstates/edified_log_aventurine.json -56a1a09d9e755d5db882fad46c2c603037148f24 assets/hexcasting/blockstates/edified_log_citrine.json -1c6a336f3e975ef6c74a62f49f98af601f979a76 assets/hexcasting/blockstates/edified_log_purple.json -2a894cc506928113c967e65281950d91ca73ec50 assets/hexcasting/blockstates/edified_panel.json -61abf0ff91d33d51f2c1e0b5aace5580ad3ec5af assets/hexcasting/blockstates/edified_planks.json -b2c7e0d8dd5ef0e942a28363649a88e268f36ce2 assets/hexcasting/blockstates/edified_pressure_plate.json -8575021a4ed61c829470423042f161131064a178 assets/hexcasting/blockstates/edified_slab.json -9248c7ea41f577d5dbf925619a23a4bbc9c2779a assets/hexcasting/blockstates/edified_stairs.json -4bef86b0a11af8a909730ff300336f591b517370 assets/hexcasting/blockstates/edified_tile.json -fd14ab58c112e69b9072b68ded4f4adb0f454cf1 assets/hexcasting/blockstates/edified_trapdoor.json -e44322f1178e121b70f45e5242d5b0e9a11c211c assets/hexcasting/blockstates/edified_wood.json -b4c85725c8cddadffe0b80586dcd35a8d08b7f47 assets/hexcasting/blockstates/impetus/empty.json -26ef987c66677d44419ab44632f75813134b5752 assets/hexcasting/blockstates/impetus/look.json -d2c41f2997d018f2e8e095508378e6d9aa8d7b6c assets/hexcasting/blockstates/impetus/redstone.json -d7c50e1ce1a4219f22e1c1ac6b5a1e38ee16d0d7 assets/hexcasting/blockstates/impetus/rightclick.json -c41c3f2f39c9fa8a319a705e2183112df18cb4f8 assets/hexcasting/blockstates/quenched_allay.json -0cdb41c9716ca939f348876aebbb46921e490f0d assets/hexcasting/blockstates/quenched_allay_bricks.json -d595dc580e8c154c771131ab2ad0c982c1c6b280 assets/hexcasting/blockstates/quenched_allay_bricks_small.json -fb69a8b5507838f3e418a4f9724da20b73cfc2d0 assets/hexcasting/blockstates/quenched_allay_tiles.json -0aca7e2e67793a21ffc794c02fb2b22d02d2058a assets/hexcasting/blockstates/scroll_paper.json -e5c88e23be0552d4c06062510e8feeab510472ef assets/hexcasting/blockstates/scroll_paper_lantern.json -ef6b44bd2360926cb9dcde5bb3f1380385acea90 assets/hexcasting/blockstates/slate.json -9d2f430f379569c512ca80540bb0242f33066ed3 assets/hexcasting/blockstates/slate_amethyst_bricks.json -8de3b35109abb92bcd8f8ce0e05068abf37b0c27 assets/hexcasting/blockstates/slate_amethyst_bricks_small.json -b341fc5a5f113863b37bc3e0f4cb16d677a4baeb assets/hexcasting/blockstates/slate_amethyst_pillar.json -b52cc5b8ab2d301df1d220b2596b393a19a149fe assets/hexcasting/blockstates/slate_amethyst_tiles.json -571fe1d5dfdfd9dacd88bc6d04b1a10e01920bd9 assets/hexcasting/blockstates/slate_block.json -c8c732a2c32e0fbdd2d3c1f7de9d1633479f7ce1 assets/hexcasting/blockstates/slate_bricks.json -a67dc65f3b1e4035662154f0de32e33e2300ad3c assets/hexcasting/blockstates/slate_bricks_small.json -b4f572a104921eba369abe5c84af3682087067c9 assets/hexcasting/blockstates/slate_pillar.json -113b805c092cf5e62f0972056d0d53a591b5aae9 assets/hexcasting/blockstates/slate_tiles.json -13fc293e23c575b19f81f9c4bcd7131d2c34f678 assets/hexcasting/blockstates/stripped_edified_log.json -d66dd72dfbc57537c39d98cf221cc0bfd108dc47 assets/hexcasting/blockstates/stripped_edified_wood.json -b2f3c31e92c7ce6d5b42d95d7ece82b898a9f4f7 assets/hexcasting/models/block/akashic_bookshelf.json -4e925a9a46bd486e5d245dc88911ea57ef0b6319 assets/hexcasting/models/block/akashic_bookshelf_1.json -1a61088aa8efb77c9132bcd3fc69b1d7b9536603 assets/hexcasting/models/block/akashic_bookshelf_2.json -25f6c17cd7b73a83a86e4c15389722d7abfe737e assets/hexcasting/models/block/akashic_bookshelf_3.json -d3b9ed0fd896d96d9bf571ccf3e37d1101e5c162 assets/hexcasting/models/block/akashic_bookshelf_4.json -12871356fc4ecaff1247b7350de79b8783cec96c assets/hexcasting/models/block/akashic_bookshelf_empty.json -215f340a583d72345410c21c43691cd2d8c86724 assets/hexcasting/models/block/akashic_ligature.json -e2a738dede302484f7c8d19dde58c08f841f0432 assets/hexcasting/models/block/akashic_record.json -218a4e73a221eae6b0da7ecdd7f64c0532be46ee assets/hexcasting/models/block/amethyst_dust_block.json -031fefc08eaad4f0d5b7b4b23a0f311f5b5b84b4 assets/hexcasting/models/block/amethyst_edified_leaves.json -c0a2818ae1162e8b93d32a913602ba8523476695 assets/hexcasting/models/block/ancient_scroll_paper.json -77d0a5c4496678f96da5103b49777e612e3cba1e assets/hexcasting/models/block/ancient_scroll_paper_lantern.json -8b6de8cb9ccea9a8e4ce207f0b72048881c11da9 assets/hexcasting/models/block/aventurine_edified_leaves.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json -bd1e5a7d3b5945c596919d7ec114d3904199d217 assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json -76183d9b39ce0dff814befd20ee2681e4809607e assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json -0d757dfb13f75a2e7fb41b8a8f0281c2adfe56ec assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json -2441d51bf7b8b81a1d930dc3adc7ad6b0f64024b assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json -7274390d61c51c344fc86870190f3d9ce2b58205 assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_down.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_east.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_north.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_south.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_up.json -598a6b87cfc622b59d7aa25e08173bfbba86cf9a assets/hexcasting/models/block/circle/directrix/empty/dim_west.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_down.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_east.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_north.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_south.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_up.json -0ed9f3f764e11eb313affb5de87b95d40011f631 assets/hexcasting/models/block/circle/directrix/empty/lit_west.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json -5c22f605218b432555ebfbbc955ef4ca493fc56c assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json -5a61959d58c2e01b970aea64980b854f5611dd7c assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json -985d84a2d334b491d50ab434bdb402d35d31420a assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json -04dd35d39851feb1b1203b698da39aef2f672e04 assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_down.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_east.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_north.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_south.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_up.json -85a51b4253b01a236df8c691364f14566b964b8e assets/hexcasting/models/block/circle/impetus/empty/dim_west.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_down.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_east.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_north.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_south.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_up.json -fb79f0fe7547501799df7ef7cf75a961e698b587 assets/hexcasting/models/block/circle/impetus/empty/lit_west.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_down.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_east.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_north.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_south.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_up.json -d28458525ef81c9569d33d54d3894618ff4da5cc assets/hexcasting/models/block/circle/impetus/look/dim_west.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_down.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_east.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_north.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_south.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_up.json -00be1a3a61281180f9fb667df34546ad8151757c assets/hexcasting/models/block/circle/impetus/look/lit_west.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json -035aa2a384760fcd7f52534d94b6f3227a53af68 assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json -6e20cc21d0275d00524135361b9e100d760cb345 assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json -a24e043229d8b278e0f70eb6b2ae4728a858f14b assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json -b45b1e1ff5360c9bd5985bf6ea375df437da2b22 assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json -7b47963b4fb1598595cc972f8ac6a38d542c6cf8 assets/hexcasting/models/block/citrine_edified_leaves.json -8b556039d842c21d8cb4cb902aaa5ab6f657a566 assets/hexcasting/models/block/conjured.json -663e744436e300ccead6a7865c72beb86a12532b assets/hexcasting/models/block/deco/amethyst_bricks.json -8db7e7dff6590f9031718c0513e3d75f92ff2525 assets/hexcasting/models/block/deco/amethyst_bricks_small.json -4ba75056f28a3a9ea0c69eb4bd7167a43bd31d74 assets/hexcasting/models/block/deco/amethyst_pillar.json -498da886ef9ba804d18e9a9ebad2acce0efb4ac2 assets/hexcasting/models/block/deco/amethyst_tiles.json -11ed17c8196b894e7f46f72f58fae1286dec4636 assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json -a04e6772e19e0803217bad644b0f2b2d342cc0fb assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json -ea05d80cfd1b19be57a04502948bd72f6b39810f assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json -c7ace7614fedaa48a07e573948d3265eb9baf399 assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json -6060174b4ee67529c5159a95b1d9a4dc29939558 assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json -e7737a9b49cf47235ce4bc5661ae511fb5502f02 assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json -7232b88842fa67b4d3c49d4080623c758f85d8cd assets/hexcasting/models/block/deco/slate_amethyst_tiles.json -d8cda16f0554a97039096a7c2fba50044bd5d0fa assets/hexcasting/models/block/deco/slate_bricks.json -099367e64dea6cef0399ccb30293e56030a5dc20 assets/hexcasting/models/block/deco/slate_bricks_small.json -606a997b09ab7b1b0b6ddf754b583bd7fceb2e46 assets/hexcasting/models/block/deco/slate_tiles.json -d04e6e7976a44e4286f0693a0ea173bc08525c6d assets/hexcasting/models/block/edified_button.json -79b149288702e1239dee1f94f8562f8c37410d14 assets/hexcasting/models/block/edified_button_pressed.json -b13efe9e1aade0163a8d378184a19a639b98c460 assets/hexcasting/models/block/edified_door_bottom_left.json -1e138fe4503fa0d37713ff5b76e8ff82090e8e8e assets/hexcasting/models/block/edified_door_bottom_left_open.json -3d001d0388fd3287ad14dca7eac1581c5ce75b0c assets/hexcasting/models/block/edified_door_bottom_right.json -9dd09e2267b2ae77314c86b1ea1c7406b5b25ce2 assets/hexcasting/models/block/edified_door_bottom_right_open.json -5525ac927fa8165243862504325be6219b40a968 assets/hexcasting/models/block/edified_door_top_left.json -11922c18e84d393bc99380d52c187bbaa6079359 assets/hexcasting/models/block/edified_door_top_left_open.json -729cf57ba13bf915999b4297aadb2ef6848d0337 assets/hexcasting/models/block/edified_door_top_right.json -db3008a51e611ee3ffb86b5829df6b7da6bfcc61 assets/hexcasting/models/block/edified_door_top_right_open.json -04bc3e2c715f624bb873e3abd5c6fcb33dd09f49 assets/hexcasting/models/block/edified_fence_gate.json -27dee730d090c1049e80c3870941ec35a3a8605e assets/hexcasting/models/block/edified_fence_gate_open.json -039ef4a7c1b07295a15bce55e4f779d517491ea5 assets/hexcasting/models/block/edified_fence_gate_wall.json -0cb10fa56c56ed495e13572d964862bccb24d8c4 assets/hexcasting/models/block/edified_fence_gate_wall_open.json -380b40dab77e4a86043723678071f924c3927928 assets/hexcasting/models/block/edified_fence_post.json -f185f0483b97314b9d5ab9e14dc787456532ec27 assets/hexcasting/models/block/edified_fence_side.json -c5433d0b5c9f039ae3c314c8a82c7e1d3238447d assets/hexcasting/models/block/edified_log.json -4e779dbe1d8dfcb2d500bf43d71ecf0bd0104eac assets/hexcasting/models/block/edified_log_amethyst.json -5c9d3a002deae195ba8bff03ac106c302d36792d assets/hexcasting/models/block/edified_log_amethyst_horizontal.json -a470e058329c844661a8011393b57d00efa1fe09 assets/hexcasting/models/block/edified_log_aventurine.json -20695e3c99b52b7738e96c57659bb358dbe9f9ec assets/hexcasting/models/block/edified_log_aventurine_horizontal.json -c38df07b2dada3843ce9399b244d2b9ecdb8faf2 assets/hexcasting/models/block/edified_log_citrine.json -df0e644143c2e50e1f165e89223796a758feb685 assets/hexcasting/models/block/edified_log_citrine_horizontal.json -71f1505d8255e1d57b8a9100b008dbaf73beacdc assets/hexcasting/models/block/edified_log_horizontal.json -231d3d0651bc8525e45f1c9a6bdcd0292b7209b4 assets/hexcasting/models/block/edified_log_purple.json -3cbf60f5ff164e84ae1224520f991a53c1177c14 assets/hexcasting/models/block/edified_log_purple_horizontal.json -e691e8592c9ba75a2c67979ebef11e1c9280075b assets/hexcasting/models/block/edified_panel.json -7dbd6ab538ab6452c981275976d698a8cd7f5636 assets/hexcasting/models/block/edified_planks.json -e291a8a550c6a31e1e11cdd590129d2b61aa3f36 assets/hexcasting/models/block/edified_planks_2.json -6e1b863df2d27342f28d10fc7fbf06e085c8e24d assets/hexcasting/models/block/edified_planks_3.json -dfd5d21b09dea57135e50dc025a1652c9eb74a29 assets/hexcasting/models/block/edified_pressure_plate.json -66dbbb738f9eb7809bf7a910331e9e4ea3cf8e32 assets/hexcasting/models/block/edified_pressure_plate_down.json -342a95e8e3964ee1f913562156d16f48f23712c7 assets/hexcasting/models/block/edified_slab.json -69762fa82b5ee7e17a63b11897ce660734627ca8 assets/hexcasting/models/block/edified_slab_top.json -113060f86214e17a3c1e96d75b06bb534a18a37d assets/hexcasting/models/block/edified_stairs.json -fbd8b3a4e77e4488e25e5b49e4ef7dcb73eb4785 assets/hexcasting/models/block/edified_stairs_inner.json -f0100add1e9997b68bc2e910da63e5a772959486 assets/hexcasting/models/block/edified_stairs_outer.json -e76164c5fd831acccf914c7f05d7fe9639c27c30 assets/hexcasting/models/block/edified_tile.json -abca4332771fe0c3e24b6624907b3206d8cb02f4 assets/hexcasting/models/block/edified_trapdoor_bottom.json -807d363ca1fffe9af1c40319a8c2338822b54f31 assets/hexcasting/models/block/edified_trapdoor_open.json -ba95ea7a856895ca2a3438293b79fe4798b212ad assets/hexcasting/models/block/edified_trapdoor_top.json -d4f286180e320c0ca819067b9e9a9b1db7f72e0a assets/hexcasting/models/block/edified_wood.json -b2e1617c6549ffdf0a38bfbb6e9270a54c7a2718 assets/hexcasting/models/block/edified_wood_horizontal.json -9af2754cb1e53eeaa85618cf92651b4878cf62b1 assets/hexcasting/models/block/quenched_allay.json -2fc68dcd6d73da3deaa6a33240dd9160a2b79592 assets/hexcasting/models/block/quenched_allay_bricks.json -669d9348f4581dae45c35268a760675509a89a29 assets/hexcasting/models/block/quenched_allay_bricks_small.json -bacd99e8c24b9ce004e8aeff509cca4b971f3ed9 assets/hexcasting/models/block/quenched_allay_tiles.json -12ef9da44a265e8aa92d4c37d26fa0777493629e assets/hexcasting/models/block/scroll_paper.json -4f0924c356f9d7bccc490344944d44010ea7e918 assets/hexcasting/models/block/scroll_paper_lantern.json -e450fafba8beee7b800376ed54ff7c3ff7db5faf assets/hexcasting/models/block/slate_amethyst_pillar.json -c68d869d5320b9304ed301a3ce6dfa7dbea74747 assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json -603ffa587a335cf23e2bb17604583c6ad6f436b8 assets/hexcasting/models/block/slate_block.json -e7481aed52721e3893c4fa70341d696992223c25 assets/hexcasting/models/block/slate_pillar.json -5cfe93a217031aff9db6c9067c56d2366b13ac7e assets/hexcasting/models/block/slate_pillar_horizontal.json -a5081ed63f45e689df2c2d6a6c1283bfcd89f20f assets/hexcasting/models/block/stripped_edified_log.json -e5484f6caf6bea67cc8a447c202a4f1dc11957db assets/hexcasting/models/block/stripped_edified_log_horizontal.json -4495b24baf73ef0aaf930a136bf0052398aad1b3 assets/hexcasting/models/block/stripped_edified_wood.json -ca5cd940b68d928845dc2d104da3dda8d15e45dd assets/hexcasting/models/block/stripped_edified_wood_horizontal.json -19a6005af10d0812e8c861053f5863e6e04af3ba assets/hexcasting/models/item/akashic_bookshelf.json -faf66c95b0725ee747c4e510414522121d9f80eb assets/hexcasting/models/item/akashic_connector.json -19730853397b109cfedd0c3bbda83d5de6cd15b9 assets/hexcasting/models/item/akashic_record.json -b5ddad23811e2f51a036c497dbe2e9f569801e79 assets/hexcasting/models/item/amethyst_bricks.json -f41f6f46a5a37e757eb4e4df3b10f68fc86efe66 assets/hexcasting/models/item/amethyst_bricks_small.json -951a9945880de02cae20c1afaf38b16b21194dd1 assets/hexcasting/models/item/amethyst_dust_block.json -144aa423e08987551a34aff969884a11c4efbff7 assets/hexcasting/models/item/amethyst_edified_leaves.json -f81fdf1ffe88fab521b34901e983cd4836ce4529 assets/hexcasting/models/item/amethyst_sconce.json -fa23967e352823f0fc9e2bdd11a9cbac7c47b135 assets/hexcasting/models/item/amethyst_tiles.json -1d0a961ead6b43d20c621b351532656bf3a0d6d2 assets/hexcasting/models/item/ancient_scroll_paper.json -d4a109488c27fc5d60e9054cd1485f1982040ff3 assets/hexcasting/models/item/ancient_scroll_paper_lantern.json -7c2b9b5296ba5e3c261bb237555e7d4082ad9303 assets/hexcasting/models/item/aventurine_edified_leaves.json -50b0a55c712887ceb02bc835a1111cf855c11b6e assets/hexcasting/models/item/citrine_edified_leaves.json -25a1386a5f4fca414f0e2509ce489616b24b9c9c assets/hexcasting/models/item/directrix/boolean.json -c24d9c5ec6c7f3212ea814ecd40e56bdc94c22a8 assets/hexcasting/models/item/directrix/empty.json -c84399ca55a1ac9b37ed4b8153b4469fa5ed9c5a assets/hexcasting/models/item/directrix/redstone.json -96e1cd457414bddbddda1383564c6a566808f958 assets/hexcasting/models/item/edified_panel.json -82bac5442c940fb74e1ad068a9c8df1d0e10d959 assets/hexcasting/models/item/edified_planks.json -3e55be12a83ab041f8e269ad4e40454e32e05421 assets/hexcasting/models/item/edified_tile.json -486c1fad6dd0bf76f160d157439e6d4add950ff8 assets/hexcasting/models/item/impetus/empty.json -cbe5bc7148b9e1c1cf5c4517801da664aa39efb8 assets/hexcasting/models/item/impetus/look.json -37ae2de56929989d8c44ba0d72e1623c2056c397 assets/hexcasting/models/item/impetus/redstone.json -e7f590cfc681aa7d19c56df325c95c5fbed01bc5 assets/hexcasting/models/item/impetus/rightclick.json -769dcfb4a504e4dcd28a43cf603a18c66f57e594 assets/hexcasting/models/item/scroll_paper.json -222e40e5754f5cb5a04321c4ed4cee27748c9224 assets/hexcasting/models/item/scroll_paper_lantern.json -e5b07f23ead1bba9ee5a3b86a9e520da883ba331 assets/hexcasting/models/item/slate_amethyst_bricks.json -826f953fdee668104ec1772941c56332e12dbc46 assets/hexcasting/models/item/slate_amethyst_bricks_small.json -a179178b90c8650b7906ce3aa302623bf3c427b7 assets/hexcasting/models/item/slate_amethyst_tiles.json -145db42b0d90bdb4fd82f5a7eea229be4c0f9675 assets/hexcasting/models/item/slate_block.json -eef72354b37ba0940ecf1e0cc5219cc15a6886a6 assets/hexcasting/models/item/slate_bricks.json -cb5ccddcc3654021fc134867303483bd135db65c assets/hexcasting/models/item/slate_bricks_small.json -71c735cca7c0b8c4e55b31fd87e46982552db135 assets/hexcasting/models/item/slate_tiles.json diff --git a/Common/src/generated/resources/.cache/e5c5eb35b4ba40351ecb7d9f04c3527f2f5779b0 b/Common/src/generated/resources/.cache/e5c5eb35b4ba40351ecb7d9f04c3527f2f5779b0 deleted file mode 100644 index 4c5fd592d7..0000000000 --- a/Common/src/generated/resources/.cache/e5c5eb35b4ba40351ecb7d9f04c3527f2f5779b0 +++ /dev/null @@ -1,17 +0,0 @@ -// 1.20.1 2024-10-01T23:18:15.2302045 Advancements -4016b178322c4784c12c66c227d5b4ff2e43d32d data/hexcasting/advancements/aaa_wasteful_cast.json -6469361b24f473b4d7d900828e6bbf2bdabf916b data/hexcasting/advancements/aab_big_cast.json -b4b921ec01322795b41e88406685c3ab7c7d09cc data/hexcasting/advancements/creative_unlocker.json -e02605ac2dff5c426e1d0a58d46daefecda11946 data/hexcasting/advancements/enlightenment.json -e2679742ac4e23ba4c79c17d209f16d42d7bccd8 data/hexcasting/advancements/lore.json -6c3fc955783d450e12494b193e985a403b203f0a data/hexcasting/advancements/lore/cardamom1.json -2191ef660f29f328fbdb3baca4f33585045c999e data/hexcasting/advancements/lore/cardamom2.json -fccce07d88f98719750516d2dbbc7ed186769c80 data/hexcasting/advancements/lore/cardamom3.json -cee68eb79ae27b6a83a25cf014d19c6bc4575cc0 data/hexcasting/advancements/lore/cardamom4.json -752744633e3b9500baebd5a4f8fa35e0c2d79ede data/hexcasting/advancements/lore/cardamom5.json -5898f7083f74a490b100b0a2282df242548baf7c data/hexcasting/advancements/lore/experiment1.json -8985672cbf68098dc416fd1f9e69d46212d04512 data/hexcasting/advancements/lore/experiment2.json -841c8eb27ad70aeaf0c9f7936fc8460cca0996fb data/hexcasting/advancements/lore/inventory.json -d273b4dc581c0029cde2208e264a6d32492cd18f data/hexcasting/advancements/opened_eyes.json -1cac020fa7b47ff386e7492f49e27803d506825d data/hexcasting/advancements/root.json -e4cee07b5809ebf27f1c1d48f66856153f7088f4 data/hexcasting/advancements/y_u_no_cast_angy.json diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_connector.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json similarity index 100% rename from Common/src/generated/resources/assets/hexcasting/blockstates/akashic_connector.json rename to Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json index 10507061f7..af52410929 100644 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json @@ -1,30 +1,7 @@ { "variants": { - "facing=down": { - "model": "hexcasting:block/amethyst_sconce", - "x": 180 - }, - "facing=east": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 90 - }, - "facing=north": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90 - }, - "facing=south": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 180 - }, - "facing=up": { + "": { "model": "hexcasting:block/amethyst_sconce" - }, - "facing=west": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 270 } } } \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json index 59d6517a5e..c132d88be4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json index 70f47f0263..3477cd9b15 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json index 618362394c..ccc4319820 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_false", "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_false", "west": "hexcasting:block/circle/directrix/boolean/right_false" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json index ec90eae94b..20c3b6cedf 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_neither", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_not_true", "up": "hexcasting:block/circle/directrix/boolean/top_neither", "west": "hexcasting:block/circle/directrix/boolean/right_neither" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json index 0eac9a0e36..5c453220fd 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/boolean/left_true", "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", "up": "hexcasting:block/circle/directrix/boolean/top_true", "west": "hexcasting:block/circle/directrix/boolean/right_true" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json index 0cf00e0267..8178542bf4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_dim", "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_dim", "up": "hexcasting:block/circle/directrix/empty/top_dim", "west": "hexcasting:block/circle/directrix/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json index f4f0467931..8da64102c4 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/empty/left_lit", "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/empty/back_lit", "up": "hexcasting:block/circle/directrix/empty/top_lit", "west": "hexcasting:block/circle/directrix/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json index 0100db33b8..adb3eb5128 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json index dbdd0a7e28..c191d8a113 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json index 5ba4750e26..97d3da2808 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_powered", "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", "up": "hexcasting:block/circle/directrix/redstone/top_powered", "west": "hexcasting:block/circle/directrix/redstone/right_powered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json index e597b41daa..722076a071 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json index a4c86b9217..479ee7c42b 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_dim", "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/empty/top_dim", "west": "hexcasting:block/circle/impetus/empty/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json index 7a57e354a9..1fb7369cd2 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/empty/left_lit", "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/empty/top_lit", "west": "hexcasting:block/circle/impetus/empty/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json index 25c889223f..76165760a5 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_dim", "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/look/top_dim", "west": "hexcasting:block/circle/impetus/look/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json index f2514c5742..504eba8930 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/look/left_lit", "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/look/top_lit", "west": "hexcasting:block/circle/impetus/look/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json index c46569cd8c..71ea895f6a 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_dim", "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/redstone/top_dim", "west": "hexcasting:block/circle/impetus/redstone/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json index 1f6d0d72fe..12630ca3cb 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/redstone/left_lit", "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/redstone/top_lit", "west": "hexcasting:block/circle/impetus/redstone/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json index f25b1aa354..c5fdbc02b0 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_dim", "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_dim", "up": "hexcasting:block/circle/impetus/rightclick/top_dim", "west": "hexcasting:block/circle/impetus/rightclick/right_dim" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json index b55b1f7a90..3840e6cb08 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json @@ -4,7 +4,7 @@ "down": "hexcasting:block/circle/bottom", "east": "hexcasting:block/circle/impetus/rightclick/left_lit", "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate", + "particle": "hexcasting:block/slate_block", "south": "hexcasting:block/circle/impetus/back_lit", "up": "hexcasting:block/circle/impetus/rightclick/top_lit", "west": "hexcasting:block/circle/impetus/rightclick/right_lit" diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json index 0afe24d83a..2d8635f925 100644 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json @@ -1,6 +1,6 @@ { "parent": "minecraft:block/cube_all", "textures": { - "all": "hexcasting:block/slate" + "all": "hexcasting:block/slate_block" } } \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_connector.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json similarity index 100% rename from Common/src/generated/resources/assets/hexcasting/models/item/akashic_connector.json rename to Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json diff --git a/Neoforge/src/generated/resources/data/create/tags/blocks/brittle.json b/Common/src/generated/resources/data/create/tags/block/brittle.json similarity index 100% rename from Neoforge/src/generated/resources/data/create/tags/blocks/brittle.json rename to Common/src/generated/resources/data/create/tags/block/brittle.json diff --git a/Neoforge/src/generated/resources/data/forge/tags/items/dusts/amethyst.json b/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json similarity index 100% rename from Neoforge/src/generated/resources/data/forge/tags/items/dusts/amethyst.json rename to Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json diff --git a/Neoforge/src/generated/resources/data/forge/tags/items/gems.json b/Common/src/generated/resources/data/forge/tags/item/gems.json similarity index 100% rename from Neoforge/src/generated/resources/data/forge/tags/items/gems.json rename to Common/src/generated/resources/data/forge/tags/item/gems.json diff --git a/Common/src/generated/resources/data/hexcasting/advancements/aaa_wasteful_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json similarity index 72% rename from Common/src/generated/resources/data/hexcasting/advancements/aaa_wasteful_cast.json rename to Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json index f99059e6a6..158691c260 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/aaa_wasteful_cast.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json @@ -3,24 +3,22 @@ "criteria": { "waste_amt": { "conditions": { - "media_wasted": { + "health_used": { "min": 89000 - } + }, + "media_generated": {} }, "trigger": "hexcasting:spend_media" } }, "display": { - "announce_to_chat": true, "description": { "translate": "advancement.hexcasting:wasteful_cast.desc" }, - "frame": "task", - "hidden": false, "icon": { - "item": "minecraft:glistering_melon_slice" + "count": 1, + "id": "minecraft:glistering_melon_slice" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:wasteful_cast" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/aab_big_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json similarity index 74% rename from Common/src/generated/resources/data/hexcasting/advancements/aab_big_cast.json rename to Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json index 50da8818bf..4664381e91 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/aab_big_cast.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json @@ -3,7 +3,8 @@ "criteria": { "cast_amt": { "conditions": { - "media_spent": { + "health_used": {}, + "media_generated": { "min": 6400000 } }, @@ -11,16 +12,13 @@ } }, "display": { - "announce_to_chat": true, "description": { "translate": "advancement.hexcasting:big_cast.desc" }, - "frame": "task", - "hidden": false, "icon": { - "item": "hexcasting:charged_amethyst" + "count": 1, + "id": "hexcasting:charged_amethyst" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:big_cast" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/creative_unlocker.json b/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json similarity index 79% rename from Common/src/generated/resources/data/hexcasting/advancements/creative_unlocker.json rename to Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json index 83470d5f2e..66694b8389 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/creative_unlocker.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:creative_unlocker" - ] + "items": "hexcasting:creative_unlocker" } ] }, @@ -20,12 +18,11 @@ "description": { "translate": "advancement.hexcasting:creative_unlocker.desc" }, - "frame": "task", "hidden": true, "icon": { - "item": "hexcasting:creative_unlocker" + "count": 1, + "id": "hexcasting:creative_unlocker" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:creative_unlocker" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/enlightenment.json b/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json similarity index 88% rename from Common/src/generated/resources/data/hexcasting/advancements/enlightenment.json rename to Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json index 5bac738e08..6beb493204 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/enlightenment.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -15,16 +16,15 @@ } }, "display": { - "announce_to_chat": true, "description": { "translate": "advancement.hexcasting:enlightenment.desc" }, "frame": "challenge", "hidden": true, "icon": { - "item": "minecraft:music_disc_11" + "count": 1, + "id": "minecraft:music_disc_11" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:enlightenment" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore.json b/Common/src/generated/resources/data/hexcasting/advancement/lore.json similarity index 64% rename from Common/src/generated/resources/data/hexcasting/advancements/lore.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore.json index b4f178e9c2..42c9fd8c5f 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore.json @@ -3,26 +3,22 @@ "used_item": { "conditions": { "item": { - "items": [ - "hexcasting:lore_fragment" - ] + "items": "hexcasting:lore_fragment" } }, "trigger": "minecraft:consume_item" } }, "display": { - "announce_to_chat": true, - "background": "hexcasting:textures/block/slate.png", + "background": "hexcasting:textures/block/slate_block.png", "description": { "translate": "advancement.hexcasting:lore.desc" }, "frame": "goal", - "hidden": false, "icon": { - "item": "hexcasting:akashic_connector" + "count": 1, + "id": "hexcasting:akashic_ligature" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom1.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json index 7156d9cf20..314c3fa628 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom1.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/cardamom1" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom2.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json index 8bd660cee4..6f3e2b9d20 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom2.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/cardamom2" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom3.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom3.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json index b51d711a75..2147c12792 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom3.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/cardamom3" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom4.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom4.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json index 0e6c717ba3..1374bfcca4 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom4.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/cardamom4" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom5.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom5.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json index 58e227f7bb..06c329a939 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/cardamom5.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/cardamom5" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/experiment1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/experiment1.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json index c871661965..9d2183c268 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/experiment1.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/experiment1" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/experiment2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/experiment2.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json index e527c0242b..4ac3cadb4f 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/experiment2.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/experiment2" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/lore/inventory.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json similarity index 67% rename from Common/src/generated/resources/data/hexcasting/advancements/lore/inventory.json rename to Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json index c8e4ba361d..abef5eb653 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/lore/inventory.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json @@ -6,16 +6,12 @@ } }, "display": { - "announce_to_chat": true, - "description": { - "text": "" - }, - "frame": "task", + "description": "", "hidden": true, "icon": { - "item": "hexcasting:lore_fragment" + "count": 1, + "id": "hexcasting:lore_fragment" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:lore/inventory" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/opened_eyes.json b/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json similarity index 81% rename from Common/src/generated/resources/data/hexcasting/advancements/opened_eyes.json rename to Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json index ba036e451f..89583b9134 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/opened_eyes.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json @@ -3,6 +3,8 @@ "criteria": { "health_used": { "conditions": { + "health_used": {}, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "min": 0.0 } @@ -11,16 +13,13 @@ } }, "display": { - "announce_to_chat": true, "description": { "translate": "advancement.hexcasting:opened_eyes.desc" }, - "frame": "task", - "hidden": false, "icon": { - "item": "minecraft:ender_eye" + "count": 1, + "id": "minecraft:ender_eye" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:opened_eyes" } diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json similarity index 77% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json index 0343f6bd69..d36fd4dc3b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -15,21 +16,20 @@ }, "has_the_recipe": { "conditions": { - "recipe": "hexcasting:impetus/empty" + "recipe": "hexcasting:akashic_record" }, "trigger": "minecraft:recipe_unlocked" } }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ - "hexcasting:impetus/empty" + "hexcasting:akashic_record" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json index 8632bebbcc..18f9ea380f 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -15,21 +16,20 @@ }, "has_the_recipe": { "conditions": { - "recipe": "hexcasting:directrix/empty" + "recipe": "hexcasting:budding_amethyst" }, "trigger": "minecraft:recipe_unlocked" } }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ - "hexcasting:directrix/empty" + "hexcasting:budding_amethyst" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json index 595f53ddba..31d9085f82 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -15,21 +16,20 @@ }, "has_the_recipe": { "conditions": { - "recipe": "hexcasting:akashic_connector" + "recipe": "hexcasting:impetus_storedplayer" }, "trigger": "minecraft:recipe_unlocked" } }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ - "hexcasting:akashic_connector" + "hexcasting:impetus_storedplayer" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json index 8e0018f519..96746726ec 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:amethyst_dust_packing" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json index c512415070..ff10efd290 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:amethyst_dust_unpacking" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json index 597cd897de..a5ab663568 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:amethyst_tiles" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json index b6ab3fb1d4..ab1194da4a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:scroll_paper" - ] + "items": "hexcasting:scroll_paper" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:ancient_scroll_paper" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json index 8571f6d3d4..31556a4ca8 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_fence" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json index aa49266e09..1d09e6fdf8 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_fence_gate" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json index 6f6e2c2337..ab66016e10 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_panel" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json index 804061465a..f031431d00 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_logs" + "items": "#hexcasting:edified_logs" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_planks" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json index 6643da70b9..317bd1fd11 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_slab" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json index 7a5b84d82a..069989ca28 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_stairs" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json index 2ec6b30c1f..5179827061 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_tile" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json index b71516d7ad..f0aaf4b1fd 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:edified_log" - ] + "items": "hexcasting:edified_log" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_wood" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json index fb582f87d5..d676daa7f7 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "minecraft:amethyst_shard" - ] + "items": "minecraft:amethyst_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:scroll_paper" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json index 163e9a2934..770d62ab2b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:slate" - ] + "items": "hexcasting:slate" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:slate_block" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json index 12add8b1a5..b2f96c2797 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:slate" - ] + "items": "hexcasting:slate" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:slate_block_from_slates" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json index 2d335c5e8a..3c2f410ce6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "minecraft:amethyst_block" - ] + "items": "minecraft:amethyst_block" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:stonecutting/amethyst_tiles" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json index d65dddf738..4d048fc250 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:stripped_edified_log" - ] + "items": "hexcasting:stripped_edified_log" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:stripped_edified_wood" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json index 5108125752..6ae4bdbbb6 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:scroll_paper_lantern" - ] + "items": "hexcasting:scroll_paper_lantern" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:ageing_scroll_paper_lantern" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json index 171b4cc129..91debb7ca5 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:amethyst_sconce" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json index 52289cc5d7..f36c1abfc2 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:ancient_scroll_paper" - ] + "items": "hexcasting:ancient_scroll_paper" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:ancient_scroll_paper_lantern" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json index 895f37a270..1bff0c5ff6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:scroll" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json similarity index 80% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json index 63a98dfc8d..2dc4651527 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:scroll_medium" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json index 41ac798ebc..63884d313e 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:scroll_paper" - ] + "items": "hexcasting:scroll_paper" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:scroll_paper_lantern" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json index 5954c5786a..2e68c56849 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:scroll_small" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json index 3e3481c8c3..551899a3a3 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:slate" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json index 1acebe3d17..bb64c267e5 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "minecraft:amethyst_shard" - ] + "items": "minecraft:amethyst_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:sub_sandwich" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json index b8f39b64f4..b032476ae7 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:quenched_allay_shard" - ] + "items": "hexcasting:quenched_allay_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:decompose_quenched_shard/charged" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json index c4bd1a2c6b..299d8a4550 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:quenched_allay_shard" - ] + "items": "hexcasting:quenched_allay_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:decompose_quenched_shard/dust" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json index b82d6e8ddc..d9f9dfbb25 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:quenched_allay_shard" - ] + "items": "hexcasting:quenched_allay_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:decompose_quenched_shard/shard" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json index 4b94e3d969..e04ea0f7b0 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:default_colorizer" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json index 68357e8330..486da412cd 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_black" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json index b0cb050ec7..c23b00add5 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_blue" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json index b1d8d0917c..daf49d8674 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_brown" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json index aa88e65b3a..bc159a4f91 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_cyan" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json index e77b2b4530..959c3b871a 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_gray" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json index aaabb10574..ae496bdb93 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_green" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json index 4cc0d01d81..9e660ad5de 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_light_blue" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json index 7b475a18fe..b2b51d665b 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_light_gray" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json index 08e2cf3998..b21321754b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_lime" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json index ef137af43d..38097fe636 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_magenta" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json index ba8b485f60..a5e2054cd0 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_orange" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json index 27e62c96d5..868366c0a4 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_pink" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json index 730d25023a..b9d4282404 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_purple" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json index 532eb81eb6..515062d384 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_red" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json index 8decf1fb68..3fbaf1ba20 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_white" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json index 9d4ee92484..e707bc9937 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:dye_colorizer_yellow" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json index 0dee46c659..e07c954cd3 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_agender" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json index e2a9be996e..8413c66774 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_aroace" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json index 8bea973430..37604e5939 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_aromantic" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json index 935c3b3a13..74df9afba7 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_asexual" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json index 9766430fc9..a3e18ad420 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_bisexual" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json index d1c0e598e0..e131fc73f1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_demiboy" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json index b83767cdc9..a164b59ce6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_demigirl" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json index a4d03097a3..59c4f8fdeb 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_gay" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json index 3c83445f58..5c3233fa98 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_genderfluid" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json index d0a5c5ee5b..fd6f1355ef 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_genderqueer" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json index 9b1dfd07fa..091329fe3f 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_intersex" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json index 05a75a9ef3..3d4dec1d10 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_lesbian" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json index d8faac779d..83c4964af9 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_nonbinary" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json index 096a3b8773..89512b05e1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_plural" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json index ef4569ca9a..70dced6396 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:pride_colorizer_transgender" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json index c2e9457bb0..fbcdbfebf4 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:amethyst_dust" - ] + "items": "hexcasting:amethyst_dust" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:uuid_colorizer" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json similarity index 88% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json index d000cbc46a..44a4110650 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -22,14 +23,13 @@ }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ "hexcasting:akashic_bookshelf" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json similarity index 88% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json index 8632bebbcc..e00a4fdf00 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/directrix/empty.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -22,14 +23,13 @@ }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ "hexcasting:directrix/empty" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json index 191916c5b2..b6cd73817c 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_button" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json index ea21e4a47a..72dce77364 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_door" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json index a9c62b86c9..f207372eeb 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_pressure_plate" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json index cc15ca3960..be0fadb15b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:edified_planks" + "items": "#hexcasting:edified_planks" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:edified_trapdoor" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json similarity index 88% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json index 0343f6bd69..0b4aa3256c 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/impetus/empty.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -6,6 +6,7 @@ "health_used": { "min": 0.8 }, + "media_generated": {}, "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { "max": 1.0, "min": 2.2250738585072014E-308 @@ -22,14 +23,13 @@ }, "requirements": [ [ - "enlightenment", - "has_the_recipe" + "has_the_recipe", + "enlightenment" ] ], "rewards": { "recipes": [ "hexcasting:impetus/empty" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json index 7349713cba..b1cb841b3e 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:abacus" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json index 7cc848539e..221cf418c3 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:artifact" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json index 46fe0a95a4..5489ea0467 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:cypher" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json index 4494bd1974..4e19de9e5e 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:focus" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json index c1d45f0e21..f67d8502aa 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:focus_rotated" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json index 0c38f6dcbd..6a24d2b333 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "minecraft:amethyst_shard" - ] + "items": "minecraft:amethyst_shard" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:jeweler_hammer" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json index c6820e5be0..3411cb2187 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:lens" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json index 9ef640f920..ef5a492652 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "minecraft:chorus_fruit" - ] + "items": "minecraft:chorus_fruit" } ] }, @@ -17,9 +15,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:focus" - ] + "items": "hexcasting:focus" } ] }, @@ -34,15 +30,14 @@ }, "requirements": [ [ + "has_the_recipe", "has_focus", - "has_chorus", - "has_the_recipe" + "has_chorus" ] ], "rewards": { "recipes": [ "hexcasting:spellbook" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json index 3517416d4d..c1e018b4ec 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/acacia" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json index a6fa449db3..19094ad2fe 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/bamboo" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json index ca645b3d2c..ca6c180cfa 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/birch" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json index a28e8cbc57..38107a9b52 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/cherry" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json index 273e6c63c9..da68b592c5 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/crimson" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json index 3f85a91af5..da9937e87d 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/dark_oak" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json index f311992c36..99d19ed3bf 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/edified" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json index e60ee05a9a..80fe7c43f6 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/jungle" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json index 395c776a6e..0064814593 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/mangrove" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json index 70be25e6c0..adb60836c1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/mindsplice" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json index 9a2a7e466c..d11084b78d 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/oak" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json index efa9566aeb..1ce63b78e3 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/quenched" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json index d9a25ac43a..cbad54cf88 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/spruce" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json index a4cda1f21b..ffff5199c6 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -5,9 +5,7 @@ "conditions": { "items": [ { - "items": [ - "hexcasting:charged_amethyst" - ] + "items": "hexcasting:charged_amethyst" } ] }, @@ -22,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:staff/warped" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json index 86e0897a2d..f50c1673fa 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:thought_knot" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json rename to Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json index 09a44adcc8..17c0d69b1f 100644 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:staves" + "items": "#hexcasting:staves" } ] }, @@ -20,14 +20,13 @@ }, "requirements": [ [ - "has_item", - "has_the_recipe" + "has_the_recipe", + "has_item" ] ], "rewards": { "recipes": [ "hexcasting:trinket" ] - }, - "sends_telemetry_event": false + } } \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancements/root.json b/Common/src/generated/resources/data/hexcasting/advancement/root.json similarity index 76% rename from Common/src/generated/resources/data/hexcasting/advancements/root.json rename to Common/src/generated/resources/data/hexcasting/advancement/root.json index 645f76cd61..1b2763aed8 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/root.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/root.json @@ -4,7 +4,7 @@ "conditions": { "items": [ { - "tag": "hexcasting:grants_root_advancement" + "items": "#hexcasting:grants_root_advancement" } ] }, @@ -12,17 +12,15 @@ } }, "display": { - "announce_to_chat": true, "background": "minecraft:textures/block/calcite.png", "description": { "translate": "advancement.hexcasting:root.desc" }, - "frame": "task", "hidden": true, "icon": { - "item": "minecraft:budding_amethyst" + "count": 1, + "id": "minecraft:budding_amethyst" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:root" } diff --git a/Common/src/generated/resources/data/hexcasting/advancements/y_u_no_cast_angy.json b/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json similarity index 76% rename from Common/src/generated/resources/data/hexcasting/advancements/y_u_no_cast_angy.json rename to Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json index a8843f3733..00a5641e4d 100644 --- a/Common/src/generated/resources/data/hexcasting/advancements/y_u_no_cast_angy.json +++ b/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json @@ -6,16 +6,13 @@ } }, "display": { - "announce_to_chat": true, "description": { "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" }, - "frame": "task", - "hidden": false, "icon": { - "item": "minecraft:blaze_powder" + "count": 1, + "id": "minecraft:blaze_powder" }, - "show_toast": true, "title": { "translate": "advancement.hexcasting:y_u_no_cast_angy" } diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json index c01f47fdb7..70af09ea61 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json @@ -2,7 +2,7 @@ "type": "hexcasting:amethyst_cluster", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:blocks/amethyst_cluster" } ], diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..2cde006e3e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..79ede35c14 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..f51d2dabf0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..78250990ed --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..b9e7041dbc --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..5cb215e05e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json new file mode 100644 index 0000000000..6dfe6d03d3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_corridor" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json index 7f0b321fe8..c636a2f73a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/abandoned_mineshaft" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json index a530f7c502..215f625f7d 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/pillager_outpost" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json index 43b7514ffc..ad1b0666d8 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/simple_dungeon" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json index 30166b92e7..f55d8f4cc0 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/stronghold_library" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json index 4e522bf609..3aaf4b8498 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_desert_house" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json index f6c234450b..93d27d6661 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_plains_house" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json index db64af9fe3..bb224944b7 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_savanna_house" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json index 331b30dd65..ec4f567a6e 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_snowy_house" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json index 5111cc7386..d2132c79bf 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_taiga_house" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json index 60d574a042..be9d6b6d12 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json @@ -3,7 +3,7 @@ "chance": 0.4, "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/woodland_mansion" } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json index bfa7024eff..27d1e1ba46 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/abandoned_mineshaft" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json index d95dc336d7..d4d94d6652 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/ancient_city" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json index bbe250d8e8..17372d9896 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/bastion_other" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json index 2f53299e74..ff8851c233 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/bastion_treasure" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json index 27e5832d30..b91f49fb8a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/desert_pyramid" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json index 00fce8eef3..f5371dd519 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/end_city_treasure" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json index bdad563e63..c1bf948ade 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/jungle_temple" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json index 2a95ff887d..68725eddce 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/nether_bridge" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json index 76114fb3ae..b06f4d95a6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/pillager_outpost" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json index 23c9b24798..3c7b528cda 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/shipwreck_map" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json index 1166f9aefd..141eebbe09 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/simple_dungeon" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json index d3766ee5ac..f08c93cb45 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/stronghold_library" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json index 4da3988ea7..a59db105dd 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/village/village_cartographer" } ], diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json rename to Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json index bf19b951bc..cc97ecc7c2 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json @@ -2,7 +2,7 @@ "type": "hexcasting:inject_scrolls", "conditions": [ { - "condition": "forge:loot_table_id", + "condition": "neoforge:loot_table_id", "loot_table_id": "minecraft:chests/woodland_mansion" } ], diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json similarity index 60% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json index 4c60a77364..02be275bc1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -5,11 +5,11 @@ "entries": [ { "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks" + "name": "hexcasting:akashic_ligature" } ], "rolls": 1.0 } ], - "random_sequence": "hexcasting:blocks/amethyst_bricks" + "random_sequence": "hexcasting:blocks/akashic_ligature" } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json similarity index 59% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json index b21dcea7c8..911c281497 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -7,20 +7,22 @@ "condition": "minecraft:any_of", "terms": [ { - "action": "shears_dig", - "condition": "forge:can_tool_perform_action" + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" }, { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } } - } - ] + ] + } } } ] diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json similarity index 59% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json index eed1136034..d2bfc7c956 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -7,20 +7,22 @@ "condition": "minecraft:any_of", "terms": [ { - "action": "shears_dig", - "condition": "forge:can_tool_perform_action" + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" }, { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } } - } - ] + ] + } } } ] diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json similarity index 59% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json index 574192357c..88f319d753 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -7,20 +7,22 @@ "condition": "minecraft:any_of", "terms": [ { - "action": "shears_dig", - "condition": "forge:can_tool_perform_action" + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" }, { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } } - } - ] + ] + } } } ] diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json similarity index 81% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json index 86b06b41d9..09fe8b6fd3 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -12,11 +12,16 @@ { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } } } ], diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json similarity index 61% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json index 6a7e00b7d0..eeb8f5c955 100644 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -7,13 +7,9 @@ "type": "minecraft:item", "functions": [ { - "function": "minecraft:copy_nbt", - "ops": [ - { - "op": "replace", - "source": "pattern", - "target": "BlockEntityTag.pattern" - } + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" ], "source": "block_entity" } diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json rename to Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json similarity index 71% rename from Neoforge/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json rename to Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json index 78e1601cb1..e87bc89af2 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json +++ b/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -8,18 +8,23 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } } } }, { "condition": "minecraft:match_tool", "predicate": { - "tag": "minecraft:cluster_max_harvestables" + "items": "#minecraft:cluster_max_harvestables" } } ], @@ -55,11 +60,16 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } } } }, @@ -68,7 +78,7 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "tag": "minecraft:cluster_max_harvestables" + "items": "#minecraft:cluster_max_harvestables" } } } @@ -100,18 +110,23 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } } } }, { "condition": "minecraft:match_tool", "predicate": { - "tag": "minecraft:cluster_max_harvestables" + "items": "#minecraft:cluster_max_harvestables" } }, { @@ -149,11 +164,16 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } } } }, @@ -162,7 +182,7 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "tag": "minecraft:cluster_max_harvestables" + "items": "#minecraft:cluster_max_harvestables" } } }, diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/abacus.json b/Common/src/generated/resources/data/hexcasting/recipe/abacus.json similarity index 82% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/abacus.json rename to Common/src/generated/resources/data/hexcasting/recipe/abacus.json index 0b922907fc..76d393b033 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/abacus.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -18,7 +18,7 @@ "WAW" ], "result": { - "item": "hexcasting:abacus" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:abacus" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json similarity index 87% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json index 5399461cc9..54de4e69be 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -3,7 +3,7 @@ "category": "misc", "ingredients": [ { - "tag": "forge:dyes/brown" + "tag": "c:dyes/brown" }, { "item": "hexcasting:scroll_paper_lantern" @@ -32,6 +32,6 @@ ], "result": { "count": 8, - "item": "hexcasting:ancient_scroll_paper_lantern" + "id": "hexcasting:ancient_scroll_paper_lantern" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json similarity index 80% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json rename to Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json index 20ea2d020a..055ac48308 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -18,7 +18,7 @@ "LPL" ], "result": { - "item": "hexcasting:akashic_bookshelf" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/akashic_connector.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json similarity index 85% rename from Fabric/src/generated/resources/data/hexcasting/recipes/akashic_connector.json rename to Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json index 218b59c739..bbcc3f83e7 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/akashic_connector.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -25,7 +25,6 @@ ], "result": { "count": 4, - "item": "hexcasting:akashic_connector" - }, - "show_notification": true + "id": "hexcasting:akashic_ligature" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json similarity index 71% rename from Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json rename to Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json index a3fdd6a2bf..1da337229f 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -11,7 +11,7 @@ "XX" ], "result": { - "item": "hexcasting:amethyst_dust_block" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json similarity index 82% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json rename to Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json index 414db2b6f2..db42cb3711 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -8,6 +8,6 @@ ], "result": { "count": 4, - "item": "hexcasting:amethyst_dust" + "id": "hexcasting:amethyst_dust" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json similarity index 67% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json rename to Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json index 73d5927d70..1ece2856f0 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -3,7 +3,7 @@ "category": "misc", "key": { "B": { - "tag": "forge:ingots/copper" + "tag": "c:ingots/copper" }, "T": { "item": "hexcasting:charged_amethyst" @@ -15,7 +15,6 @@ ], "result": { "count": 4, - "item": "hexcasting:amethyst_sconce" - }, - "show_notification": true + "id": "hexcasting:amethyst_sconce" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json similarity index 82% rename from Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json index d41a67a785..300139c437 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -19,7 +19,6 @@ ], "result": { "count": 8, - "item": "hexcasting:amethyst_tiles" - }, - "show_notification": true + "id": "hexcasting:amethyst_tiles" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json similarity index 87% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json index 09a583cb6b..33db9b82c9 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -3,7 +3,7 @@ "category": "building", "ingredients": [ { - "tag": "forge:dyes/brown" + "tag": "c:dyes/brown" }, { "item": "hexcasting:scroll_paper" @@ -32,6 +32,6 @@ ], "result": { "count": 8, - "item": "hexcasting:ancient_scroll_paper" + "id": "hexcasting:ancient_scroll_paper" } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json similarity index 73% rename from Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json index 743cc6dddf..d99d9ba91b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -14,7 +14,7 @@ "B" ], "result": { - "item": "hexcasting:ancient_scroll_paper_lantern" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/artifact.json b/Common/src/generated/resources/data/hexcasting/recipe/artifact.json similarity index 64% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/artifact.json rename to Common/src/generated/resources/data/hexcasting/recipe/artifact.json index 350fb2e98a..a03e30a2a8 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/artifact.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -6,10 +6,10 @@ "item": "hexcasting:charged_amethyst" }, "D": { - "tag": "minecraft:music_discs" + "tag": "minecraft:creeper_drop_music_discs" }, "F": { - "tag": "forge:ingots/gold" + "tag": "c:ingots/gold" } }, "pattern": [ @@ -18,7 +18,7 @@ " D " ], "result": { - "item": "hexcasting:artifact" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:artifact" + } } \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json similarity index 61% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json index b58a6ec996..0532b2e5ed 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -1,15 +1,15 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "minecraft:amethyst_block" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 3 }, "result": { - "name": "minecraft:budding_amethyst" + "Name": "minecraft:budding_amethyst" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json similarity index 60% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json index fd1c128f51..5e97ada05f 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -1,18 +1,18 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "hexcasting:directrix/empty" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 1, - "profession": "shepherd" + "profession": "minecraft:shepherd" }, "result": { - "name": "hexcasting:directrix/boolean", - "properties": { + "Name": "hexcasting:directrix/boolean", + "Properties": { "energized": "false", "facing": "north", "state": "neither" diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json similarity index 60% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json index 3cfe40b7c0..afb314d043 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -1,18 +1,18 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "hexcasting:directrix/empty" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 1, - "profession": "mason" + "profession": "minecraft:mason" }, "result": { - "name": "hexcasting:directrix/redstone", - "properties": { + "Name": "hexcasting:directrix/redstone", + "Properties": { "energized": "false", "facing": "north", "powered": "false" diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json similarity index 58% rename from Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json index 59338fc079..7d77364f78 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -1,18 +1,18 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "hexcasting:impetus/empty" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 2, - "profession": "fletcher" + "profession": "minecraft:fletcher" }, "result": { - "name": "hexcasting:impetus/look", - "properties": { + "Name": "hexcasting:impetus/look", + "Properties": { "energized": "false", "facing": "north" } diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json similarity index 57% rename from Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json index 5a106bd801..02fbae2538 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -1,18 +1,18 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "hexcasting:impetus/empty" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 2, - "profession": "toolsmith" + "profession": "minecraft:toolsmith" }, "result": { - "name": "hexcasting:impetus/rightclick", - "properties": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { "energized": "false", "facing": "north" } diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json similarity index 60% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json index 1bef4d4633..f79dca1d11 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -1,18 +1,18 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "hexcasting:impetus/empty" }, "cost": 1000000, "entityIn": { - "type": "villager", + "type": "hexcasting:villager", "minLevel": 2, - "profession": "cleric" + "profession": "minecraft:cleric" }, "result": { - "name": "hexcasting:impetus/redstone", - "properties": { + "Name": "hexcasting:impetus/redstone", + "Properties": { "energized": "false", "facing": "north", "powered": "true" diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json similarity index 63% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json rename to Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json index d7943e7a49..076b4e0745 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -1,15 +1,15 @@ { "type": "hexcasting:brainsweep", "blockIn": { - "type": "block", + "type": "hexcasting:block", "block": "minecraft:amethyst_block" }, "cost": 100000, "entityIn": { - "type": "entity_type", + "type": "hexcasting:entity_type", "entityType": "minecraft:allay" }, "result": { - "name": "hexcasting:quenched_allay" + "Name": "hexcasting:quenched_allay" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/lens.json b/Common/src/generated/resources/data/hexcasting/recipe/cypher.json similarity index 70% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/lens.json rename to Common/src/generated/resources/data/hexcasting/recipe/cypher.json index e91c62a012..80e1837536 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/lens.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -3,7 +3,7 @@ "category": "equipment", "key": { "C": { - "item": "minecraft:glass" + "tag": "c:ingots/copper" }, "I": { "item": "hexcasting:amethyst_dust" @@ -15,7 +15,7 @@ " C " ], "result": { - "item": "hexcasting:lens" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:cypher" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json similarity index 85% rename from Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json rename to Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json index 9521bacbca..4d9e9902e8 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -11,6 +11,6 @@ ], "result": { "count": 4, - "item": "hexcasting:charged_amethyst" + "id": "hexcasting:charged_amethyst" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json similarity index 86% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json rename to Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json index 4a52d88ccf..5023760773 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -11,6 +11,6 @@ ], "result": { "count": 31, - "item": "hexcasting:amethyst_dust" + "id": "hexcasting:amethyst_dust" } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json similarity index 85% rename from Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json rename to Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json index af22d06105..e441d9bf5f 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -11,6 +11,6 @@ ], "result": { "count": 7, - "item": "minecraft:amethyst_shard" + "id": "minecraft:amethyst_shard" } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/recipes/default_colorizer.json rename to Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json index 133b5b03bd..b61e7ef20a 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/default_colorizer.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -18,7 +18,7 @@ "DCD" ], "result": { - "item": "hexcasting:default_colorizer" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:default_colorizer" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json similarity index 83% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/directrix/empty.json rename to Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json index b622fd8844..986fa97d99 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/directrix/empty.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -21,7 +21,7 @@ "SSC" ], "result": { - "item": "hexcasting:directrix/empty" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:directrix/empty" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json index 4131cc5643..43dcd86862 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_black" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json index f9476f986d..b9cd3b99c3 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_blue" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json index 3d5459144d..f02b87049c 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_brown" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json index 7f5167cb35..93380132c6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_cyan" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json index c491dd7650..c803427d5a 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_gray" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json index 96665a82f9..e592b36cca 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_green" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json index 85d69c57b3..d8eb9b5986 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_light_blue" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json index 2d66ef7c2a..e6efc2af9a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_light_gray" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json index f35899f58f..645db81176 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_lime" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json index 0449c7a303..9476c0a098 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_magenta" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json index fd2b480a12..f6f815b95f 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_orange" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json index e208a43556..065db19c23 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_pink" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json index da671f3ea5..85dab6119e 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_purple" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json similarity index 77% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json index 3ff5f19d65..8acba0fc1a 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_red" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json index 8902cb1a1e..d76ee9ba69 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_white" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json rename to Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json index 1bddee39eb..35ffbdd8df 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:dye_colorizer_yellow" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json rename to Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json similarity index 100% rename from Fabric/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json rename to Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_button.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/edified_button.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_button.json index 6e250ed1b2..10ad25b4aa 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_button.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -7,6 +7,7 @@ } ], "result": { - "item": "hexcasting:edified_button" + "count": 1, + "id": "hexcasting:edified_button" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_door.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_door.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_door.json index 899954c7ee..6ff2941615 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_door.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -13,7 +13,6 @@ ], "result": { "count": 3, - "item": "hexcasting:edified_door" - }, - "show_notification": true + "id": "hexcasting:edified_door" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json similarity index 78% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json index 25458e77e7..f1a7c7ec45 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -15,7 +15,6 @@ ], "result": { "count": 3, - "item": "hexcasting:edified_fence" - }, - "show_notification": true + "id": "hexcasting:edified_fence" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json similarity index 76% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json index 799b582fb9..a38d45ca38 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -14,7 +14,7 @@ "SWS" ], "result": { - "item": "hexcasting:edified_fence_gate" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:edified_fence_gate" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_panel.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json similarity index 79% rename from Fabric/src/generated/resources/data/hexcasting/recipes/edified_panel.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json index af912d5628..0baf420f31 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_panel.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -16,7 +16,6 @@ ], "result": { "count": 8, - "item": "hexcasting:edified_panel" - }, - "show_notification": true + "id": "hexcasting:edified_panel" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_planks.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/edified_planks.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json index 10317d4b79..7ea641db71 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_planks.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -8,6 +8,6 @@ ], "result": { "count": 4, - "item": "hexcasting:edified_planks" + "id": "hexcasting:edified_planks" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json similarity index 69% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json index 3a1d77b05a..fb80df82d1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -10,7 +10,7 @@ "WW" ], "result": { - "item": "hexcasting:edified_pressure_plate" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_slab.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json similarity index 73% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_slab.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json index 83458a02bc..efda8df52a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_slab.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -11,7 +11,6 @@ ], "result": { "count": 6, - "item": "hexcasting:edified_slab" - }, - "show_notification": true + "id": "hexcasting:edified_slab" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/edified_stairs.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json index cd17064167..ca2e03f9c3 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_stairs.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -13,7 +13,6 @@ ], "result": { "count": 4, - "item": "hexcasting:edified_stairs" - }, - "show_notification": true + "id": "hexcasting:edified_stairs" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_tile.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json similarity index 75% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_tile.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json index a19f9d35b0..bfca8c3437 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_tile.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -13,7 +13,6 @@ ], "result": { "count": 6, - "item": "hexcasting:edified_tile" - }, - "show_notification": true + "id": "hexcasting:edified_tile" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json similarity index 73% rename from Fabric/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json index fbe3f9b3da..89928fcc73 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -12,7 +12,6 @@ ], "result": { "count": 2, - "item": "hexcasting:edified_trapdoor" - }, - "show_notification": true + "id": "hexcasting:edified_trapdoor" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json similarity index 74% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/edified_wood.json rename to Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json index 17a530245a..4e95e0bdc6 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_wood.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -12,7 +12,6 @@ ], "result": { "count": 3, - "item": "hexcasting:edified_wood" - }, - "show_notification": true + "id": "hexcasting:edified_wood" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/focus.json b/Common/src/generated/resources/data/hexcasting/recipe/focus.json similarity index 69% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/focus.json rename to Common/src/generated/resources/data/hexcasting/recipe/focus.json index d97175d65c..ff88244378 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/focus.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/focus.json @@ -6,10 +6,10 @@ "item": "hexcasting:charged_amethyst" }, "G": { - "tag": "forge:dusts/glowstone" + "tag": "c:dusts/glowstone" }, "L": { - "tag": "forge:leather" + "tag": "c:leathers" }, "P": { "item": "minecraft:paper" @@ -21,7 +21,7 @@ "GLG" ], "result": { - "item": "hexcasting:focus" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:focus" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json similarity index 69% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/focus_rotated.json rename to Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json index c84d2ef9a5..62aba7f62e 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/focus_rotated.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -6,10 +6,10 @@ "item": "hexcasting:charged_amethyst" }, "G": { - "tag": "forge:dusts/glowstone" + "tag": "c:dusts/glowstone" }, "L": { - "tag": "forge:leather" + "tag": "c:leathers" }, "P": { "item": "minecraft:paper" @@ -21,7 +21,7 @@ "GPG" ], "result": { - "item": "hexcasting:focus" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:focus" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json similarity index 84% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/impetus/empty.json rename to Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json index c0f772d643..b5d3b9fd5c 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/impetus/empty.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -21,7 +21,7 @@ "SSP" ], "result": { - "item": "hexcasting:impetus/empty" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:impetus/empty" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json similarity index 72% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json rename to Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json index 94157a802d..fef55bcb4b 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -6,10 +6,10 @@ "item": "minecraft:amethyst_shard" }, "I": { - "tag": "forge:ingots/iron" + "tag": "c:ingots/iron" }, "N": { - "tag": "forge:nuggets/iron" + "tag": "c:nuggets/iron" }, "S": [ { @@ -26,7 +26,7 @@ " S " ], "result": { - "item": "hexcasting:jeweler_hammer" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:jeweler_hammer" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/lens.json b/Common/src/generated/resources/data/hexcasting/recipe/lens.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/recipes/lens.json rename to Common/src/generated/resources/data/hexcasting/recipe/lens.json index e91c62a012..d7e33ac36b 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/lens.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/lens.json @@ -15,7 +15,7 @@ " C " ], "result": { - "item": "hexcasting:lens" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:lens" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json index d92f22f1df..d5401c0952 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_agender" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json index cc747fec3e..25c32f412c 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_aroace" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json index 421af44c47..ab923e9b61 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_aromantic" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json index 75245d5013..c41a3223de 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_asexual" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json index 3f13a25e91..157dff5b64 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_bisexual" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json index 9ff3ece1ec..c79d6fd805 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_demiboy" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json index e8a8322040..4a87fb83dd 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_demigirl" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json similarity index 77% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json index da08d7d2e0..3922bf5fa1 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_gay" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json index ee84a87e50..788be0d074 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_genderfluid" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json index a5d706b3f3..db56478852 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_genderqueer" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json index 592a3f5cf2..0cf8605f6e 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_intersex" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json index eefd174c3b..60faeb98cb 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_lesbian" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json index 87d59afe53..1592908ece 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_nonbinary" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json similarity index 76% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json index 9b616724e0..662aaf38fc 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_plural" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json similarity index 74% rename from Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json rename to Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json index cb09eaa35e..cce2b91ea8 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -15,7 +15,7 @@ " D " ], "result": { - "item": "hexcasting:pride_colorizer_transgender" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll.json similarity index 79% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/scroll.json rename to Common/src/generated/resources/data/hexcasting/recipe/scroll.json index 50fa3bb410..cf7a4fcfb1 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -15,7 +15,7 @@ "PPP" ], "result": { - "item": "hexcasting:scroll" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:scroll" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_medium.json rename to Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json index ad3445812d..85b2a98f34 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_medium.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -15,7 +15,7 @@ "PP " ], "result": { - "item": "hexcasting:scroll_medium" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:scroll_medium" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json similarity index 82% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper.json rename to Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json index 18c3c67bec..1feb96a530 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -19,7 +19,6 @@ ], "result": { "count": 8, - "item": "hexcasting:scroll_paper" - }, - "show_notification": true + "id": "hexcasting:scroll_paper" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json similarity index 75% rename from Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json rename to Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json index 3b9aa6a140..5434f4c7f1 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -14,7 +14,7 @@ "B" ], "result": { - "item": "hexcasting:scroll_paper_lantern" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_small.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_small.json rename to Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json index 1772485731..c64a3e544a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_small.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -14,7 +14,7 @@ "P " ], "result": { - "item": "hexcasting:scroll_small" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:scroll_small" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/slate.json b/Common/src/generated/resources/data/hexcasting/recipe/slate.json similarity index 80% rename from Fabric/src/generated/resources/data/hexcasting/recipes/slate.json rename to Common/src/generated/resources/data/hexcasting/recipe/slate.json index 43863d1aa2..eb718972c2 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/slate.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate.json @@ -15,7 +15,6 @@ ], "result": { "count": 6, - "item": "hexcasting:slate" - }, - "show_notification": true + "id": "hexcasting:slate" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/slate_block.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json similarity index 82% rename from Fabric/src/generated/resources/data/hexcasting/recipes/slate_block.json rename to Common/src/generated/resources/data/hexcasting/recipe/slate_block.json index 5bd7d2052f..975fea26a0 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/slate_block.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -19,7 +19,6 @@ ], "result": { "count": 8, - "item": "hexcasting:slate_block" - }, - "show_notification": true + "id": "hexcasting:slate_block" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json similarity index 72% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json rename to Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json index a04d33319a..92bf412fdf 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -11,7 +11,7 @@ "S" ], "result": { - "item": "hexcasting:slate_block" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:slate_block" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json similarity index 77% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/spellbook.json rename to Common/src/generated/resources/data/hexcasting/recipe/spellbook.json index 4a7f7ee1ba..d9e9250926 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/spellbook.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -12,7 +12,7 @@ "item": "minecraft:chorus_fruit" }, "N": { - "tag": "forge:nuggets/gold" + "tag": "c:nuggets/gold" } }, "pattern": [ @@ -21,7 +21,7 @@ "NBA" ], "result": { - "item": "hexcasting:spellbook" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:spellbook" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json similarity index 81% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/staff/acacia.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json index b6dcd43429..a5e01a9c9a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/acacia.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/acacia" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/acacia" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json index 2796a8b049..8c648a860c 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/bamboo" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/bamboo" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/birch.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json similarity index 82% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/birch.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json index 7c91ab627a..2cee68c976 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/birch.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/birch" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/birch" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json similarity index 81% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/staff/cherry.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json index 36a96851b0..fb19b26271 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/cherry.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/cherry" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/cherry" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/crimson.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json index 105a164cfc..6f8b4dd09e 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/crimson.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/crimson" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/crimson" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json index 14ed432aa3..b4a9aea823 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/dark_oak" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/dark_oak" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/edified.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/edified.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json index 8ce0918491..29378f8085 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/edified.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/edified" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/edified" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/jungle.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json index 383db50fce..a3b382cf11 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/jungle.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/jungle" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/jungle" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json index 33fb46a8ab..2ad01c0d69 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/mangrove" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/mangrove" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json index 8b14081c0c..41c9e8abb0 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/mindsplice" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/mindsplice" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json similarity index 82% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/oak.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json index 5c8e796b5a..75d6d9daab 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/oak.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/oak" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/oak" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/quenched.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json index 170c8373fc..91fd1fc452 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/quenched.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/quenched" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/quenched" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/spruce.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json index 3670939402..0ab7166a60 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/spruce.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/spruce" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/spruce" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/warped.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json similarity index 81% rename from Fabric/src/generated/resources/data/hexcasting/recipes/staff/warped.json rename to Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json index c8f1b7ce6a..8a71b96aaf 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/warped.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -18,7 +18,7 @@ "S " ], "result": { - "item": "hexcasting:staff/warped" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:staff/warped" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json similarity index 58% rename from Fabric/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json rename to Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json index 020b0ec65f..7eb40a9ada 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -1,8 +1,10 @@ { "type": "minecraft:stonecutting", - "count": 1, "ingredient": { "item": "minecraft:amethyst_block" }, - "result": "hexcasting:amethyst_tiles" + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json similarity index 73% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json rename to Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json index c0cab6f42f..0ccb5ae8e2 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -12,7 +12,6 @@ ], "result": { "count": 3, - "item": "hexcasting:stripped_edified_wood" - }, - "show_notification": true + "id": "hexcasting:stripped_edified_wood" + } } \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json similarity index 83% rename from Fabric/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json rename to Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json index 937deabc39..82a511fde4 100644 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -21,7 +21,7 @@ " B " ], "result": { - "item": "hexcasting:sub_sandwich" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:sub_sandwich" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/thought_knot.json b/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json similarity index 80% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/thought_knot.json rename to Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json index 2f2c9f9504..d89ad83310 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/thought_knot.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -10,6 +10,7 @@ } ], "result": { - "item": "hexcasting:thought_knot" + "count": 1, + "id": "hexcasting:thought_knot" } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/trinket.json b/Common/src/generated/resources/data/hexcasting/recipe/trinket.json similarity index 69% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/trinket.json rename to Common/src/generated/resources/data/hexcasting/recipe/trinket.json index ed357447da..f0c905012a 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/trinket.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -3,7 +3,7 @@ "category": "equipment", "key": { "C": { - "tag": "forge:ingots/iron" + "tag": "c:ingots/iron" }, "I": { "item": "minecraft:amethyst_shard" @@ -15,7 +15,7 @@ " C " ], "result": { - "item": "hexcasting:trinket" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:trinket" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json similarity index 81% rename from Neoforge/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json rename to Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json index 418123f8b7..235a2aff68 100644 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json +++ b/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -18,7 +18,7 @@ "DCD" ], "result": { - "item": "hexcasting:uuid_colorizer" - }, - "show_notification": true + "count": 1, + "id": "hexcasting:uuid_colorizer" + } } \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json rename to Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json b/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json rename to Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/directrices.json rename to Common/src/generated/resources/data/hexcasting/tags/block/directrices.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json rename to Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json rename to Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json new file mode 100644 index 0000000000..094771ef74 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json @@ -0,0 +1,5 @@ +{ + "values": [ + "#minecraft:needs_diamond_tool" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/impeti.json rename to Common/src/generated/resources/data/hexcasting/tags/block/impeti.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json b/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json rename to Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json rename to Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json rename to Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json rename to Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json rename to Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/directrices.json rename to Common/src/generated/resources/data/hexcasting/tags/item/directrices.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/edified_logs.json rename to Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/edified_planks.json rename to Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json b/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json rename to Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/impeti.json rename to Common/src/generated/resources/data/hexcasting/tags/item/impeti.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/phial_base.json b/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/phial_base.json rename to Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/seal_materials.json b/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/seal_materials.json rename to Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/items/staves.json b/Common/src/generated/resources/data/hexcasting/tags/item/staves.json similarity index 100% rename from Neoforge/src/generated/resources/data/hexcasting/tags/items/staves.json rename to Common/src/generated/resources/data/hexcasting/tags/item/staves.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/buttons.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/buttons.json rename to Common/src/generated/resources/data/minecraft/tags/block/buttons.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json b/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json rename to Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/doors.json b/Common/src/generated/resources/data/minecraft/tags/block/doors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/doors.json rename to Common/src/generated/resources/data/minecraft/tags/block/doors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json b/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json rename to Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/fences.json b/Common/src/generated/resources/data/minecraft/tags/block/fences.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/fences.json rename to Common/src/generated/resources/data/minecraft/tags/block/fences.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/leaves.json b/Common/src/generated/resources/data/minecraft/tags/block/leaves.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/leaves.json rename to Common/src/generated/resources/data/minecraft/tags/block/leaves.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/logs.json b/Common/src/generated/resources/data/minecraft/tags/block/logs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/logs.json rename to Common/src/generated/resources/data/minecraft/tags/block/logs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json rename to Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json similarity index 95% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json rename to Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json index 66e5f0a52f..0d6037e186 100644 --- a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json +++ b/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -2,7 +2,7 @@ "values": [ "hexcasting:akashic_record", "hexcasting:akashic_bookshelf", - "hexcasting:akashic_connector", + "hexcasting:akashic_ligature", "hexcasting:edified_log", "hexcasting:edified_log_amethyst", "hexcasting:edified_log_aventurine", diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json rename to Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json rename to Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json rename to Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/planks.json b/Common/src/generated/resources/data/minecraft/tags/block/planks.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/planks.json rename to Common/src/generated/resources/data/minecraft/tags/block/planks.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json rename to Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/slabs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/slabs.json rename to Common/src/generated/resources/data/minecraft/tags/block/slabs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/stairs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/stairs.json rename to Common/src/generated/resources/data/minecraft/tags/block/stairs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json rename to Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json b/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json rename to Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json rename to Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/buttons.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/buttons.json rename to Common/src/generated/resources/data/minecraft/tags/item/buttons.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/doors.json b/Common/src/generated/resources/data/minecraft/tags/item/doors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/doors.json rename to Common/src/generated/resources/data/minecraft/tags/item/doors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/leaves.json b/Common/src/generated/resources/data/minecraft/tags/item/leaves.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/leaves.json rename to Common/src/generated/resources/data/minecraft/tags/item/leaves.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/logs.json b/Common/src/generated/resources/data/minecraft/tags/item/logs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/logs.json rename to Common/src/generated/resources/data/minecraft/tags/item/logs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json rename to Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/planks.json b/Common/src/generated/resources/data/minecraft/tags/item/planks.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/planks.json rename to Common/src/generated/resources/data/minecraft/tags/item/planks.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/slabs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/slabs.json rename to Common/src/generated/resources/data/minecraft/tags/item/slabs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/trapdoors.json rename to Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json rename to Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_doors.json rename to Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json rename to Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json rename to Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json similarity index 100% rename from Neoforge/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json rename to Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json diff --git a/Neoforge/src/generated/resources/data/forge/loot_modifiers/global_loot_modifiers.json b/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json similarity index 95% rename from Neoforge/src/generated/resources/data/forge/loot_modifiers/global_loot_modifiers.json rename to Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json index 46e71c9b97..6699a7a66e 100644 --- a/Neoforge/src/generated/resources/data/forge/loot_modifiers/global_loot_modifiers.json +++ b/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json @@ -1,37 +1,37 @@ { "entries": [ - "hexcasting:scroll/minecraft/chests/nether_bridge", - "hexcasting:scroll/minecraft/chests/village/village_cartographer", - "hexcasting:lore/minecraft/chests/village/village_taiga_house", - "hexcasting:cypher/minecraft/chests/ancient_city", - "hexcasting:cypher/minecraft/chests/jungle_temple", - "hexcasting:scroll/minecraft/chests/shipwreck_map", - "hexcasting:lore/minecraft/chests/village/village_snowy_house", + "hexcasting:scroll/minecraft/chests/simple_dungeon", "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", - "hexcasting:cypher/minecraft/chests/simple_dungeon", - "hexcasting:cypher/minecraft/chests/desert_pyramid", - "hexcasting:amethyst_cluster", - "hexcasting:lore/minecraft/chests/village/village_plains_house", - "hexcasting:lore/minecraft/chests/stronghold_library", "hexcasting:scroll/minecraft/chests/bastion_other", - "hexcasting:lore/minecraft/chests/woodland_mansion", - "hexcasting:lore/minecraft/chests/village/village_desert_house", - "hexcasting:scroll/minecraft/chests/end_city_treasure", + "hexcasting:scroll/minecraft/chests/nether_bridge", "hexcasting:scroll/minecraft/chests/jungle_temple", - "hexcasting:scroll/minecraft/chests/bastion_treasure", - "hexcasting:lore/minecraft/chests/village/village_savanna_house", - "hexcasting:scroll/minecraft/chests/pillager_outpost", "hexcasting:scroll/minecraft/chests/desert_pyramid", - "hexcasting:lore/minecraft/chests/abandoned_mineshaft", - "hexcasting:lore/minecraft/chests/pillager_outpost", - "hexcasting:cypher/minecraft/chests/stronghold_corridor", + "hexcasting:scroll/minecraft/chests/village/village_cartographer", + "hexcasting:scroll/minecraft/chests/shipwreck_map", + "hexcasting:scroll/minecraft/chests/bastion_treasure", + "hexcasting:scroll/minecraft/chests/end_city_treasure", "hexcasting:scroll/minecraft/chests/ancient_city", + "hexcasting:scroll/minecraft/chests/pillager_outpost", + "hexcasting:scroll/minecraft/chests/woodland_mansion", "hexcasting:scroll/minecraft/chests/stronghold_library", "hexcasting:lore/minecraft/chests/simple_dungeon", + "hexcasting:lore/minecraft/chests/abandoned_mineshaft", + "hexcasting:lore/minecraft/chests/pillager_outpost", + "hexcasting:lore/minecraft/chests/woodland_mansion", + "hexcasting:lore/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/village/village_desert_house", + "hexcasting:lore/minecraft/chests/village/village_plains_house", + "hexcasting:lore/minecraft/chests/village/village_savanna_house", + "hexcasting:lore/minecraft/chests/village/village_snowy_house", + "hexcasting:lore/minecraft/chests/village/village_taiga_house", + "hexcasting:cypher/minecraft/chests/simple_dungeon", "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", - "hexcasting:scroll/minecraft/chests/woodland_mansion", + "hexcasting:cypher/minecraft/chests/stronghold_corridor", + "hexcasting:cypher/minecraft/chests/jungle_temple", + "hexcasting:cypher/minecraft/chests/desert_pyramid", + "hexcasting:cypher/minecraft/chests/ancient_city", "hexcasting:cypher/minecraft/chests/nether_bridge", - "hexcasting:scroll/minecraft/chests/simple_dungeon" + "hexcasting:amethyst_cluster" ], "replace": false } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java index 5904a5b204..d98f9ca773 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java @@ -55,10 +55,5 @@ private boolean test(int mediaGeneratedIn, double healthUsedIn, float healthLeft // DID YOU KNOW ALL THE ENEITYT PREDICATES ARE HARD-CODED AND YOU CANT MAKE NEW ONES && this.healthLeft.matches(healthLeftIn); } - - @Override - public Optional player() { - return null; - } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java index 127a6ef0b1..7c6ca4973b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java @@ -267,7 +267,7 @@ public static void onModelRegister(ResourceManager recMan, Consumer(); for (int i = 0; i < BlockQuenchedAllay.VARIANTS; i++) { - var variantLoc = new ModelResourceLocation(modLoc(locStart + blockLoc.getPath() + "_" + i), ModelResourceLocation.INVENTORY_VARIANT); + var variantLoc = new ModelResourceLocation(modLoc(locStart + blockLoc.getPath() + "_" + i), IClientXplatAbstractions.INSTANCE.getModelLocVariant()); var model = map.get(variantLoc); list.add(model); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index 5eaf30f7ea..b97c799ef6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -187,7 +187,7 @@ private static BlockBehaviour.Properties quenched() { public static final BlockAkashicBookshelf AKASHIC_BOOKSHELF = blockItem("akashic_bookshelf", new BlockAkashicBookshelf(akashicWoodyHard() .lightLevel(bs -> (bs.getValue(BlockAkashicBookshelf.HAS_BOOKS)) ? 4 : 0))); - public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_connector", + public static final BlockAkashicLigature AKASHIC_LIGATURE = blockItem("akashic_ligature", new BlockAkashicLigature(akashicWoodyHard().lightLevel(bs -> 4))); public static final BlockQuenchedAllay QUENCHED_ALLAY = blockItem("quenched_allay", new BlockQuenchedAllay(quenched())); diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java index 8be99bddf5..e2c39f5ffa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java @@ -119,7 +119,7 @@ public void generate(HolderLookup.Provider provider, Consumer var loreRoot = Advancement.Builder.advancement() .display(simpleDisplayWithBackground(HexBlocks.AKASHIC_LIGATURE, "lore", AdvancementType.GOAL, - modLoc("textures/block/slate.png"))) + modLoc("textures/block/slate_block.png"))) .addCriterion("used_item", new Criterion<>(CriteriaTriggers.CONSUME_ITEM, new ConsumeItemTrigger.TriggerInstance(Optional.empty(), Optional.of(ItemPredicate.Builder.item().of(HexItems.LORE_FRAGMENT).build())))) .save(consumer, prefix("lore")); diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java index 509cc3c2a2..ab87c932da 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java @@ -40,6 +40,8 @@ public interface IClientXplatAbstractions { IClientXplatAbstractions INSTANCE = find(); + String getModelLocVariant(); + private static IClientXplatAbstractions find() { var providers = ServiceLoader.load(IClientXplatAbstractions.class).stream().toList(); if (providers.size() != 1) { diff --git a/Common/src/main/resources/assets/hexcasting/textures/block/slate.png b/Common/src/main/resources/assets/hexcasting/textures/block/slate_block.png similarity index 100% rename from Common/src/main/resources/assets/hexcasting/textures/block/slate.png rename to Common/src/main/resources/assets/hexcasting/textures/block/slate_block.png diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 4089d3c8e4..2aee8820a5 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -117,11 +117,11 @@ dependencies { modImplementation "net.fabricmc:fabric-loader:${fabricLoaderVersion}" modImplementation "net.fabricmc.fabric-api:fabric-api:${fabricVersion}" - common(project(path: ':Common', configuration: 'namedElements')) { transitive false } + implementation(project(path: ':Common', configuration: 'namedElements')) { transitive false } shadowBundle project(path: ':Common', configuration: 'transformProductionFabric') // === MANDATORY DEPS === - modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" + modCompileOnly("at.petra-k:paucal:$paucalVersion+$minecraftVersion-common") // dear mod devs, don't put the platform in the middle of your version code modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-FABRIC-SNAPSHOT" modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" @@ -143,9 +143,10 @@ dependencies { modCompileOnly "dev.emi:emi-fabric:${emiVersion}:api" modLocalRuntime "dev.emi:emi-fabric:${emiVersion}" - modRuntimeOnly "dev.architectury:architectury-fabric:$architecturyVersion" - modRuntimeOnly "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" - include(implementation("blue.endless:jankson:1.2.2")) + modLocalRuntime "dev.architectury:architectury-fabric:$architecturyVersion" + modLocalRuntime "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" + modLocalRuntime "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" + localRuntime "blue.endless:jankson:1.2.2" // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" diff --git a/Fabric/src/generated/resources/.cache/19f2b40f78e342d65a8cb499a41e3fcb2eadaca3 b/Fabric/src/generated/resources/.cache/19f2b40f78e342d65a8cb499a41e3fcb2eadaca3 deleted file mode 100644 index a2a95b576a..0000000000 --- a/Fabric/src/generated/resources/.cache/19f2b40f78e342d65a8cb499a41e3fcb2eadaca3 +++ /dev/null @@ -1,58 +0,0 @@ -// 1.20.1 2025-01-23T15:50:44.3944222 Hex Casting/Loot Tables -4efd95d408d050c36ff21b18f3c37116491fef92 data\hexcasting\loot_tables\blocks\directrix\redstone.json -c81a5cb81141ab1fe09dd5dd3a0968b69dfffbd7 data\hexcasting\loot_tables\blocks\stripped_edified_log.json -a62ffbcec2aa40172e05cd9fcd8e70e295d008e9 data\hexcasting\loot_tables\blocks\edified_fence_gate.json -8ea8fd68719a960c2e132df441564a70c0e376a8 data\hexcasting\loot_tables\blocks\amethyst_pillar.json -9905b767be7849e02a8e4ec4170af1bdde4e7fab data\hexcasting\loot_tables\blocks\edified_stairs.json -0b734693c926045b60fb515814b7a6695d0295fc data\hexcasting\loot_tables\blocks\impetus\look.json -ab86e126a704550d3f21c0b43f99fdc2665e4b09 data\hexcasting\loot_tables\blocks\slate_amethyst_tiles.json -2c9af74a82ca462e5986354966d5a0a1fd5a2083 data\hexcasting\loot_tables\blocks\slate_tiles.json -bedbc2bd04f79372aedea64214ba2ea49cde9640 data\hexcasting\loot_tables\blocks\amethyst_edified_leaves.json -45dc91d820caa5c421fe6f2afc7f71e45d6acd4d data\hexcasting\loot_tables\blocks\slate_pillar.json -6c35afda4ca349f3506fe08f86f0afe58a6f2c44 data\hexcasting\loot_tables\blocks\quenched_allay.json -2902c4dae60875a1b2daf0a948a49a3419d8ec9d data\hexcasting\loot_tables\blocks\edified_log.json -95be0cf7f277257671631929462131b6d611119a data\hexcasting\loot_tables\inject\amethyst_cluster.json -b19ac49146149555038e6d2e06200d514df1ef43 data\hexcasting\loot_tables\blocks\akashic_bookshelf.json -c426245d51f1e0fa0db7c4bfb454284d75506c9c data\hexcasting\loot_tables\blocks\quenched_allay_bricks.json -6920654f50532b5e557646e34edc4872339eb79f data\hexcasting\loot_tables\blocks\edified_log_amethyst.json -6eecc98b606d7ea5ec6f4c1fa4f63f7c1eba9223 data\hexcasting\loot_tables\blocks\slate_amethyst_bricks.json -2ad288784b0dc106ace2e6e0a40669f83476c414 data\hexcasting\loot_tables\blocks\slate.json -49940d1cb2599212e2837d7ed66c6c66e54f80f8 data\hexcasting\loot_tables\blocks\akashic_record.json -d16fa9e366d48646686470c2d1f9bda4db3a1afa data\hexcasting\loot_tables\blocks\ancient_scroll_paper.json -cc7313cc33609fe1120baa7b4db631eaa29fbba1 data\hexcasting\loot_tables\blocks\citrine_edified_leaves.json -df5496da8e48b61a171bc7a3936495c016cc002e data\hexcasting\loot_tables\blocks\directrix\empty.json -92528799c8ee13ff26c3c505e4dfb286c30f97c7 data\hexcasting\loot_tables\blocks\akashic_connector.json -434c2a6d2645e56e9a6ca56249ffa84645558e3b data\hexcasting\loot_tables\blocks\quenched_allay_bricks_small.json -601384d888edab27efe4a33027bb557eb7cb6ca2 data\hexcasting\loot_tables\blocks\edified_log_purple.json -45ae0ec668a07aa5b33d491377b2978f69f9f019 data\hexcasting\loot_tables\blocks\edified_panel.json -55f265961463a89c243ec8ac1970c70185f064a6 data\hexcasting\loot_tables\blocks\edified_button.json -7123b1a0469d7bd5bf8a2772182d222bf354df1a data\hexcasting\loot_tables\blocks\slate_bricks_small.json -509ecbb9731e75b63638c6012b2f986f131fd42f data\hexcasting\loot_tables\blocks\slate_amethyst_bricks_small.json -74159c21634679a6ab1dde1c181433db8b31c6ae data\hexcasting\loot_tables\blocks\edified_log_citrine.json -1dd4268edf7d6fa247013ab45541c7bfb915eef8 data\hexcasting\loot_tables\blocks\amethyst_bricks_small.json -499af9f15cf0a7f16fd2939e5d3af60a8089cc3e data\hexcasting\loot_tables\blocks\slate_bricks.json -30f06db8c1ea74c9f4d95474e412336d065ac888 data\hexcasting\loot_tables\blocks\edified_door.json -7c9c94d5b6b570d25eff32d4fa2ecc1e842e5231 data\hexcasting\loot_tables\blocks\quenched_allay_tiles.json -65fe724d4c4ba8b0ab7d7a11bf37687413d9119d data\hexcasting\loot_tables\blocks\edified_fence.json -cf6ff1ed1ee6fdbb05af16468a0a0ced79ac334e data\hexcasting\loot_tables\blocks\amethyst_bricks.json -8c6c0486170537d73b923a2b9f83722107fc8716 data\hexcasting\loot_tables\blocks\edified_log_aventurine.json -dc4c6d270b8e93d05ac8ddeb1b9dd1d64828ac5d data\hexcasting\loot_tables\blocks\stripped_edified_wood.json -2ab674e834184b4e17dc002556d4473cac137445 data\hexcasting\loot_tables\blocks\edified_slab.json -e6ff979aa47877c1b807075c448defd249cd3484 data\hexcasting\loot_tables\blocks\slate_amethyst_pillar.json -9ff760d5db5628328ea9274c98e18a08f1ab983e data\hexcasting\loot_tables\blocks\slate_block.json -f1145860d80ff053970b1ad4f3b2f5d9f28e7c73 data\hexcasting\loot_tables\blocks\directrix\boolean.json -44658abcf122575878834d276ebcf5d8a6b7b398 data\hexcasting\loot_tables\blocks\aventurine_edified_leaves.json -849afa706e7479d1c11bb40ae223ae5833e71286 data\hexcasting\loot_tables\blocks\scroll_paper_lantern.json -b6c23fdde4f2c22c81f008604d5ff1c32ca8eb61 data\hexcasting\loot_tables\blocks\amethyst_tiles.json -10cb1b94596ac7131efe3bd5c36c1543ddba9302 data\hexcasting\loot_tables\blocks\impetus\redstone.json -147e0739a712a9050856cebcad1757b3f418f647 data\hexcasting\loot_tables\blocks\edified_trapdoor.json -5f8d09e8c759d05cf9c2265ae28ea942cfbbe2be data\hexcasting\loot_tables\blocks\edified_pressure_plate.json -ecaeb4d5703a7aa206627ed38ee71aeb7e93d688 data\hexcasting\loot_tables\blocks\impetus\rightclick.json -a4e0194d8966a24531e43e04437cdb2a96456898 data\hexcasting\loot_tables\blocks\edified_tile.json -1a1236e54c24b5aeff05919c73c76151da2cf115 data\hexcasting\loot_tables\blocks\amethyst_sconce.json -c15d3ced89c882dfe552f84435fcdd560b729567 data\hexcasting\loot_tables\blocks\scroll_paper.json -92331eb19422730ffda0a3e52427a75aa1f7aff2 data\hexcasting\loot_tables\blocks\ancient_scroll_paper_lantern.json -b706c8a064f717c57104c48ea42aa860b45cf7a4 data\hexcasting\loot_tables\blocks\amethyst_dust_block.json -2ac70e3c3600c88b2544d9755fc634216a7a523c data\hexcasting\loot_tables\blocks\edified_wood.json -1c6b077aae560e780be29e74ddcd4b0ca10ce3cf data\hexcasting\loot_tables\blocks\impetus\empty.json -847bc3ead8a88a8f210a24e7732c28d50aa2f5dc data\hexcasting\loot_tables\blocks\edified_planks.json diff --git a/Fabric/src/generated/resources/.cache/2ba8da2cf2d44ff18dc72cc891b094eca6836a5c b/Fabric/src/generated/resources/.cache/2ba8da2cf2d44ff18dc72cc891b094eca6836a5c deleted file mode 100644 index 0e1d57cba2..0000000000 --- a/Fabric/src/generated/resources/.cache/2ba8da2cf2d44ff18dc72cc891b094eca6836a5c +++ /dev/null @@ -1,25 +0,0 @@ -// 1.20.1 2025-01-23T15:50:44.4049409 Hex Casting/Tags for minecraft:item -e5df19a1dc6eadf14cd9b0f0fe45a74330b745e9 data\minecraft\tags\items\planks.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\minecraft\tags\items\logs.json -20183cd61968ff6548df2dde1100b6378d68d64b data\minecraft\tags\items\wooden_buttons.json -5bbfd513fd2eb2090b0c2d1ec33504deb79d53b9 data\minecraft\tags\items\slabs.json -ef8ae066fea6277ba2ab43faf18757b88f7c4803 data\hexcasting\tags\items\grants_root_advancement.json -e5df19a1dc6eadf14cd9b0f0fe45a74330b745e9 data\hexcasting\tags\items\edified_planks.json -fdb48f194d7937ab6b423fa4b90a4d438bf6dd90 data\minecraft\tags\items\wooden_doors.json -4461ef6db41a675fd077dd833cfd0ea537e755be data\c\tags\items\amethyst_dusts.json -38d781b60c5c37dc025d4c7e9ec5aa680f2a5835 data\c\tags\items\gems.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\hexcasting\tags\items\edified_logs.json -c72a147bc65d26424df199388969ebd11119aed3 data\hexcasting\tags\items\brainswept_circle_components.json -30780136e6469a01369d7e278998edb6d7f6a16b data\hexcasting\tags\items\staves.json -5bbfd513fd2eb2090b0c2d1ec33504deb79d53b9 data\minecraft\tags\items\wooden_slabs.json -5216ba5c57db29b8dee9aebc63a2e3b17c97dc17 data\minecraft\tags\items\wooden_trapdoors.json -9d18fb7a889031a704ca0e553600e1d6f8c3759d data\hexcasting\tags\items\directrices.json -e186f43ed06770e698c886691f91b2c6acdb5a2a data\hexcasting\tags\items\seal_materials.json -5928bad07d3872bb60f29ef4f3c885c8e1967c20 data\hexcasting\tags\items\phial_base.json -fdb48f194d7937ab6b423fa4b90a4d438bf6dd90 data\minecraft\tags\items\doors.json -37cff4ce449b8069b59b2327d78e073fc026d348 data\minecraft\tags\items\wooden_pressure_plates.json -bdb90cee0e88e02f0b98f12d5dd212adfaca9afd data\hexcasting\tags\items\impeti.json -20183cd61968ff6548df2dde1100b6378d68d64b data\minecraft\tags\items\buttons.json -5f3b600b4fd98744bd08c993ce7bcb9c2f195cd2 data\minecraft\tags\items\leaves.json -5216ba5c57db29b8dee9aebc63a2e3b17c97dc17 data\minecraft\tags\items\trapdoors.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\minecraft\tags\items\logs_that_burn.json diff --git a/Fabric/src/generated/resources/.cache/3cb4ab563deee432e7d307024048f57946bafb1c b/Fabric/src/generated/resources/.cache/3cb4ab563deee432e7d307024048f57946bafb1c deleted file mode 100644 index c7442d4c4d..0000000000 --- a/Fabric/src/generated/resources/.cache/3cb4ab563deee432e7d307024048f57946bafb1c +++ /dev/null @@ -1,4 +0,0 @@ -// 1.20.1 2025-01-23T15:50:44.4152906 Hex Casting/Tags for hexcasting:action -6fe30f41e2bcd48589caab26d210a513dce1ab7c data\hexcasting\tags\action\per_world_pattern.json -6fe30f41e2bcd48589caab26d210a513dce1ab7c data\hexcasting\tags\action\can_start_enlighten.json -6fe30f41e2bcd48589caab26d210a513dce1ab7c data\hexcasting\tags\action\requires_enlightenment.json diff --git a/Fabric/src/generated/resources/.cache/812fdb58b7018b2d5c5af7da57a2b1857fa66794 b/Fabric/src/generated/resources/.cache/812fdb58b7018b2d5c5af7da57a2b1857fa66794 deleted file mode 100644 index 657625c00a..0000000000 --- a/Fabric/src/generated/resources/.cache/812fdb58b7018b2d5c5af7da57a2b1857fa66794 +++ /dev/null @@ -1,34 +0,0 @@ -// 1.20.1 2025-01-23T15:50:44.400399 Hex Casting/Tags for minecraft:block -e8d5ef7eabb567228b279b2419e4f042082d7491 data\minecraft\tags\blocks\fences.json -7e1e353cb7f561f086898f991ece48e047991934 data\minecraft\tags\blocks\fence_gates.json -fdb48f194d7937ab6b423fa4b90a4d438bf6dd90 data\minecraft\tags\blocks\doors.json -c72a147bc65d26424df199388969ebd11119aed3 data\hexcasting\tags\blocks\brainswept_circle_components.json -5f3b600b4fd98744bd08c993ce7bcb9c2f195cd2 data\minecraft\tags\blocks\leaves.json -bdb90cee0e88e02f0b98f12d5dd212adfaca9afd data\hexcasting\tags\blocks\impeti.json -37cff4ce449b8069b59b2327d78e073fc026d348 data\minecraft\tags\blocks\pressure_plates.json -8cd7a960fd719f200b0bf38100cd17c73b66d39c data\minecraft\tags\blocks\mineable\pickaxe.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\minecraft\tags\blocks\logs_that_burn.json -357eddf3cee6f16725bed0701d57b2ca3097d74d data\minecraft\tags\blocks\mineable\shovel.json -4b84fc8b7976df220be382bdda66ecf25ceee559 data\create\tags\blocks\brittle.json -5bbfd513fd2eb2090b0c2d1ec33504deb79d53b9 data\minecraft\tags\blocks\slabs.json -7acae0c88f5ead65339db1b11b16f60214434c86 data\minecraft\tags\blocks\wooden_fences.json -281cb08b9b68ef049820c4f3f36b40820044681e data\minecraft\tags\blocks\wooden_stairs.json -5216ba5c57db29b8dee9aebc63a2e3b17c97dc17 data\minecraft\tags\blocks\trapdoors.json -643994ee757a533cfb5001689e0f0263956b8a35 data\minecraft\tags\blocks\mineable\axe.json -5216ba5c57db29b8dee9aebc63a2e3b17c97dc17 data\minecraft\tags\blocks\wooden_trapdoors.json -20183cd61968ff6548df2dde1100b6378d68d64b data\minecraft\tags\blocks\wooden_buttons.json -37cff4ce449b8069b59b2327d78e073fc026d348 data\minecraft\tags\blocks\wooden_pressure_plates.json -6f52ca5e42991af6d7b829f626010ce304277464 data\minecraft\tags\blocks\crystal_sound_blocks.json -6ae561f7399e39ffa0e97bd0569aeffa9eabff6a data\hexcasting\tags\blocks\water_plants.json -9d18fb7a889031a704ca0e553600e1d6f8c3759d data\hexcasting\tags\blocks\directrices.json -7e1e353cb7f561f086898f991ece48e047991934 data\minecraft\tags\blocks\unstable_bottom_center.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\minecraft\tags\blocks\logs.json -20183cd61968ff6548df2dde1100b6378d68d64b data\minecraft\tags\blocks\buttons.json -e5df19a1dc6eadf14cd9b0f0fe45a74330b745e9 data\minecraft\tags\blocks\planks.json -e5df19a1dc6eadf14cd9b0f0fe45a74330b745e9 data\hexcasting\tags\blocks\edified_planks.json -5bbfd513fd2eb2090b0c2d1ec33504deb79d53b9 data\minecraft\tags\blocks\wooden_slabs.json -fdb48f194d7937ab6b423fa4b90a4d438bf6dd90 data\minecraft\tags\blocks\wooden_doors.json -281cb08b9b68ef049820c4f3f36b40820044681e data\minecraft\tags\blocks\stairs.json -eba53f6c7645de4ef5ffb1e10ef34a4c23e98887 data\hexcasting\tags\blocks\cheap_to_break_block.json -5f3b600b4fd98744bd08c993ce7bcb9c2f195cd2 data\minecraft\tags\blocks\mineable\hoe.json -c562b4be24d0b6b13f3c65599d3bfa3bf2c4ce21 data\hexcasting\tags\blocks\edified_logs.json diff --git a/Fabric/src/generated/resources/.cache/c70ef2fe5da52437c1f53bcc9ea0e416f16bcc0b b/Fabric/src/generated/resources/.cache/c70ef2fe5da52437c1f53bcc9ea0e416f16bcc0b deleted file mode 100644 index c845076e2a..0000000000 --- a/Fabric/src/generated/resources/.cache/c70ef2fe5da52437c1f53bcc9ea0e416f16bcc0b +++ /dev/null @@ -1,220 +0,0 @@ -// 1.20.1 2025-01-23T15:50:44.4089311 Hex Casting/Recipes -1d1e73244fb3da633d8a5f84bad93c6022a94368 data\hexcasting\advancements\recipes\misc\pride_colorizer_demiboy.json -49e706193bb57a957091e419bd0d8aa58135da1f data\hexcasting\recipes\dye_colorizer_green.json -071e5875b13b60aac33bc97e408d2ca710ac5d02 data\hexcasting\advancements\recipes\building_blocks\stonecutting\amethyst_tiles.json -fb852d8e4bcfa7b75f41a6ac7dc1e76b00d95fb1 data\hexcasting\advancements\recipes\misc\dye_colorizer_red.json -9269b17eaae3217422352354fc6006c9808b398c data\hexcasting\recipes\dye_colorizer_black.json -5d6d73e16a36da5f9df6a7b8ac859181d401766d data\hexcasting\recipes\uuid_colorizer.json -e11aeded7f5d3fdd224627c67661bbd993901703 data\hexcasting\recipes\edified_pressure_plate.json -8c52917fc7041c483fb6dfe8d16c90f096f2beaf data\hexcasting\recipes\compat\farmersdelight\cutting\edified_log_amethyst.json -d6b7a9392320c11866b3f139f97977dc9f55bc47 data\hexcasting\recipes\scroll_small.json -c1846dd794f5cc5814b8a839291e82512a02ba12 data\hexcasting\advancements\recipes\misc\pride_colorizer_plural.json -17a1adf747b99848381ca8e7c5e2cd9dd96c014f data\hexcasting\advancements\recipes\misc\default_colorizer.json -f347f4ce869207e62a7887df1252505a3432e12a data\hexcasting\recipes\pride_colorizer_genderfluid.json -f8ee073c1c03f1c11147e4801eeba1f86e5459ba data\hexcasting\recipes\dye_colorizer_blue.json -b16ff5314d457bc7e9e224e102d1e04ce3a62361 data\hexcasting\recipes\brainsweep\directrix_redstone.json -862f1a61a296a834df8a93dbd5a6cdfa2df15721 data\hexcasting\advancements\recipes\tools\staff\acacia.json -ea87956c49dcfabb0d39af45c016130d258181da data\hexcasting\recipes\staff\birch.json -5e66982df6a1074c81f381898033b521ca337695 data\hexcasting\recipes\staff\quenched.json -ee5db13cbb33d9c62bcb1eb645e2c4bea97ad44a data\hexcasting\advancements\recipes\building_blocks\amethyst_dust_unpacking.json -f4c56ea7143ce92a0ae0b663310e53644a7309f7 data\hexcasting\advancements\recipes\misc\pride_colorizer_pansexual.json -3b03fdae3896212a0b8b9b3a2d4880d197e67d2d data\hexcasting\recipes\jeweler_hammer.json -7ca0f9fc6e8ae1ad08ef5c29a0b279b891f7d8d4 data\hexcasting\advancements\recipes\misc\pride_colorizer_aroace.json -b6fa898369ac52cdd9d7f91e3b8a2cb881c3829f data\hexcasting\advancements\recipes\decorations\scroll_medium.json -0654e70ed1ed8be20ae3dd9f4955cd14f9fa40d0 data\hexcasting\advancements\recipes\tools\staff\jungle.json -1b570b35288be9f6faab1536d6e45cb52eb088c0 data\hexcasting\advancements\recipes\tools\staff\dark_oak.json -505eb9192df0b48867e58e09ce36b2259dc6d3e8 data\hexcasting\advancements\recipes\decorations\scroll.json -09096a40275b6c49d4b4e6984869aa43b34712c3 data\hexcasting\recipes\dynamicseal_focus.json -b7084f131b0cdb9c2c698a3c5b3450d69e788d6e data\hexcasting\recipes\dye_colorizer_yellow.json -55602e415fc1b797439b674050887e9e388558c9 data\hexcasting\advancements\recipes\building_blocks\edified_panel.json -a9111ff52513200af47b79cf98b2e545699497bb data\hexcasting\advancements\recipes\building_blocks\amethyst_tiles.json -ea63e49709bd80cb9f4cd1fe13e9bd0281101c9a data\hexcasting\recipes\slate.json -8e48c680b38666c2e7da71fbe4ceddf5d99a5cbc data\hexcasting\advancements\recipes\food\sub_sandwich.json -4d5e4a6374731b2d0a90c70a5d489703fd966977 data\hexcasting\advancements\recipes\misc\dye_colorizer_lime.json -7552df3fc726cc4cdaa88aa4823eff6ce069fb75 data\hexcasting\recipes\slate_block_from_slates.json -72f70637aea1c11683e9ee91d83c2807c6ec33a9 data\hexcasting\recipes\compat\farmersdelight\cutting\akashic_trapdoor.json -2cea013887734cbc4971bcd57e7e4f6a2b25c8e1 data\hexcasting\advancements\recipes\tools\focus.json -f1bae034d27d218bf262a8c777b787d232489f16 data\hexcasting\recipes\lens.json -963d87d2738686e5398a178b8b369228ff067403 data\hexcasting\recipes\spellbook.json -f0e71ae8c6a9170669f44096a55a875d11497c56 data\hexcasting\recipes\staff\warped.json -7c479398bbc7185a2c3efd568ad266d8109245bf data\hexcasting\advancements\recipes\redstone\edified_door.json -7baf0777533737aef68bcac36944943b77138d29 data\hexcasting\recipes\edified_button.json -daa7b13d5370f4306f8cdf3037fc346e8918950a data\hexcasting\recipes\dye_colorizer_brown.json -f08a0aee92b281ae325d907e6fe4a3b03980f2aa data\hexcasting\advancements\recipes\tools\staff\edified.json -61fafd43af83bdca6720d0993ab71f40a8bebd40 data\hexcasting\advancements\recipes\redstone\akashic_connector.json -00853ec1885c1f72674c07caf6fd04904e248f8f data\hexcasting\recipes\brainsweep\directrix_boolean.json -b90ad4cbffc2e3c01671dfe8bda5e42d9b8a685c data\hexcasting\advancements\recipes\tools\staff\crimson.json -ef96ae9709ec931ce6b6af8a539f9bc483236449 data\hexcasting\recipes\scroll_medium.json -552c235dc58a46a3e57913c9b9faf3f21abeae32 data\hexcasting\advancements\recipes\building_blocks\stripped_edified_wood.json -a0b87b1b21506708d09c9295b7afc13de6b1fce6 data\hexcasting\recipes\pride_colorizer_aromantic.json -ae88fcdecbfbdd0a0fe778467421a3b32d7ed735 data\create\recipes\crushing\amethyst_cluster.json -aa7558ec1baf6070efbe448d886e20e964e33f96 data\hexcasting\advancements\recipes\brainsweep\brainsweep\quench_allay.json -a8d604ba059d54502837809815d3ac9bbcaa89bf data\hexcasting\advancements\recipes\redstone\akashic_bookshelf.json -5889e2df2fb4e1ea29f2590b96bb3aa94961a09a data\hexcasting\recipes\scroll.json -0038883bd294cc8a1b324d6782478d5e37b4dbf9 data\hexcasting\advancements\recipes\misc\dye_colorizer_pink.json -71f821f5d24b0bf9ecd860d51e055628fe4af50c data\hexcasting\recipes\edified_panel.json -7e1a5a873d655e0efba80f22ae9b1de4f248e67a data\hexcasting\advancements\recipes\misc\decompose_quenched_shard\shard.json -417695497a95436186c1a4ed842d7975d754f9eb data\hexcasting\recipes\stripped_edified_wood.json -92bdf87687d8823036fae6bd01782c653831286b data\hexcasting\recipes\brainsweep\impetus_look.json -3608f0ec056f2c5d29a9a89305218497fd2c4383 data\hexcasting\recipes\stonecutting\amethyst_tiles.json -8815ea5d8d7379062e050adc5736cc579c3bdd9e data\hexcasting\recipes\edified_stairs.json -f482a4349786388cc8f11d5550548f7d60265438 data\hexcasting\recipes\staff\mangrove.json -6e2dc32f975d987b8dfd329507334f647bceadc0 data\hexcasting\advancements\recipes\tools\staff\mangrove.json -5a90084c03d6e8424872870c8b65f4771b447f03 data\hexcasting\recipes\brainsweep\budding_amethyst.json -2eacf53894ae97712dc3874777e29dce0a0e5540 data\hexcasting\advancements\recipes\misc\pride_colorizer_asexual.json -af9a260c24e0a65eea321f0dd9dd2fa7d648707f data\hexcasting\advancements\recipes\building_blocks\amethyst_dust_packing.json -24c244e53c7e47b85845d2ee36b1665410cf495a data\hexcasting\recipes\edified_planks.json -b84c113ef5321c9df9ac9080de03e8d8639feab2 data\hexcasting\advancements\recipes\misc\pride_colorizer_genderqueer.json -97062771a426f6e4b9e3bfd6daa62b1d4b3c7039 data\hexcasting\recipes\abacus.json -41a570f970c9af8229cb1140a11a5220fac00957 data\hexcasting\advancements\recipes\tools\staff\spruce.json -2c56c267e23e75d5a3b9358d424d69642e001b50 data\hexcasting\recipes\decompose_quenched_shard\dust.json -4003f297be29810cebde4995fb2838c2c68a25ea data\hexcasting\recipes\pride_colorizer_lesbian.json -5f216dbb7b89fd837e2dd73e3ed41c8d412de234 data\hexcasting\advancements\recipes\misc\decompose_quenched_shard\dust.json -648f1862fde1dd8ade80b2991b8c8e3991389e95 data\hexcasting\recipes\dye_colorizer_light_blue.json -fb486df96798724da2fcc0df5706f19bc1ff94dc data\hexcasting\advancements\recipes\misc\dye_colorizer_light_blue.json -946cde51bbfc2af344b078f6b39389ffc44462f4 data\hexcasting\advancements\recipes\brainsweep\brainsweep\impetus_storedplayer.json -0b951ce7b9d1bfb07ae012b12225b595d36c6e66 data\hexcasting\recipes\amethyst_dust_packing.json -838b91c33a72a58aa286607eaaa17cdd6b4c90ba data\hexcasting\recipes\amethyst_sconce.json -8f515bf8ccea70b3d88845ed83966dc0c66082f6 data\hexcasting\advancements\recipes\tools\staff\oak.json -0f2e63a9361d18aac764f6a4a4f13b9b862ac2ee data\hexcasting\recipes\compat\create\crushing\amethyst_shard.json -cedc2889c4f327b18755bbe8c3c595d302e2a9d0 data\hexcasting\recipes\decompose_quenched_shard\shard.json -2003fed3aa4eb622b6b07a9e65946fb40be14420 data\hexcasting\advancements\recipes\brainsweep\brainsweep\impetus_rightclick.json -7d71eb93bbb0856167cf4521283e39f0048078ee data\hexcasting\advancements\recipes\redstone\edified_button.json -0bd7c9f4a9bf29c1b63b2f9378f0a7e2f594b7b7 data\hexcasting\recipes\pride_colorizer_nonbinary.json -157ee5fba985bbd01a87f44578890dab5489a8e5 data\hexcasting\advancements\recipes\misc\dye_colorizer_green.json -c2ef04b311251b4eb22320b2f5313c54533a9974 data\hexcasting\advancements\recipes\tools\staff\birch.json -2fff80cd3dabd2bc1744eecd72b2364b0f91c7c1 data\hexcasting\advancements\recipes\misc\dye_colorizer_yellow.json -e536791d0c6fb48206e6e30d56879eaf0a9e4bd7 data\hexcasting\recipes\akashic_bookshelf.json -faaa9c39dbcdd131c5fbec9ac6a26d6dc5e72053 data\hexcasting\advancements\recipes\misc\dye_colorizer_light_gray.json -e0609202271e402d8ae58e4f8eaf11dcdda10a9e data\hexcasting\recipes\brainsweep\akashic_record.json -3bf96944a8eed8b8d3f5d96b609297727c078cb7 data\hexcasting\advancements\recipes\misc\dye_colorizer_purple.json -203b7035125390abb4ed77b3a4dca8f8f8f57bc5 data\hexcasting\recipes\dye_colorizer_light_gray.json -e691130641b11c0a030a51c71dee0ba356f3b5bd data\hexcasting\recipes\compat\farmersdelight\cutting\edified_log_aventurine.json -8f7b81add0153ad94900acc66cd8174ae7115f64 data\hexcasting\advancements\recipes\building_blocks\slate_block_from_slates.json -06402fb37fe4bb05918d13dbfdb89f4c2b67f3ec data\hexcasting\advancements\recipes\tools\cypher.json -c8f2ad363e4d20054f4e56fde02c8775a45a7169 data\hexcasting\recipes\artifact.json -8bea75fdc5e64c464dcf5f85166e767ff44e6dc2 data\hexcasting\advancements\recipes\misc\pride_colorizer_lesbian.json -c6228d72ca800a7dd336e82bbb9b4f20f89de29d data\hexcasting\advancements\recipes\redstone\edified_pressure_plate.json -0aaf55492e850d2bb1ec2f9986406ca61fde4cfd data\hexcasting\recipes\dye_colorizer_lime.json -e6a592721234448f2ee7ec402bca10a9b78b4677 data\hexcasting\advancements\recipes\decorations\slate.json -e9166f40c8797cdbf3d8062dfa35c74f850f1000 data\hexcasting\advancements\recipes\misc\dye_colorizer_white.json -2aa7d74e29a7c5ee4f1b8835cf7c6109eed81d77 data\hexcasting\recipes\brainsweep\quench_allay.json -f81053a3269c1b371be3f8057bad4803056ee0f9 data\hexcasting\recipes\dye_colorizer_orange.json -bc729ac7cf84d29a99cd34d50c152c0b9d20bd7a data\hexcasting\advancements\recipes\brainsweep\brainsweep\akashic_record.json -1a9dd55a24f56a4e9467f1117e0898f7e71ade67 data\hexcasting\advancements\recipes\decorations\amethyst_sconce.json -d7de5d626fd799a2522af36f0c62c52fe490e6d2 data\hexcasting\recipes\edified_door.json -c3f7b03fe184ed5e54a8ae06d130adf507b7683d data\hexcasting\recipes\staff\bamboo.json -6f2634e5588aede8e29157ecc859652d8a9f4065 data\hexcasting\advancements\recipes\misc\dye_colorizer_orange.json -b10d590e918e35b16578a8b739a1c4e7e2202e16 data\hexcasting\advancements\recipes\misc\dye_colorizer_cyan.json -0e792d49c81d2164e827d1bdedaa0fa358dfc437 data\hexcasting\advancements\recipes\misc\pride_colorizer_aromantic.json -afb422ad4a918ee0161bf077f09475bb1da2b4eb data\hexcasting\recipes\amethyst_dust_unpacking.json -98c0843e6a83b91820f1c720e206295eec20ff95 data\hexcasting\recipes\ancient_scroll_paper.json -011f8daf15148d4b77686c6d382d8f5c288a333d data\hexcasting\advancements\recipes\building_blocks\ancient_scroll_paper.json -9b7c5220fbaf3e84fa9e81eae322eed5d37b22d3 data\hexcasting\recipes\pride_colorizer_transgender.json -a1f9df0537c0ef33a1164cf94e8ff4b1094f889f data\hexcasting\advancements\recipes\tools\staff\warped.json -54335e0004423899ad37763a1d8456cc0a6e72a7 data\hexcasting\advancements\recipes\misc\decompose_quenched_shard\charged.json -641d8c38b8109665314fccbebd9068ba10b04118 data\hexcasting\advancements\recipes\misc\dye_colorizer_gray.json -5e98cec2084f0cfbb959c3ec39bd85a3369f443b data\hexcasting\advancements\recipes\tools\abacus.json -b300f7729e75614fce412457f6717686680f81da data\hexcasting\recipes\sub_sandwich.json -1a0d55e6824c078453c1d44e885a1c51ba707a41 data\hexcasting\recipes\dye_colorizer_white.json -36d26f34d0405ff2d1e728e5b5174502686e3590 data\hexcasting\advancements\recipes\brainsweep\brainsweep\budding_amethyst.json -903cbe4d4c4e5abcd5e006f9d0237e8c596228ba data\hexcasting\recipes\edified_tile.json -1093cccc6b1c45eb91f7c1680ef575a7bffb2744 data\hexcasting\advancements\recipes\building_blocks\edified_planks.json -233aeedc73173427e7b2287772a4f914f97b072c data\hexcasting\recipes\dye_colorizer_red.json -2a2f60fb0f63ee278b74c418acf04575304c521f data\hexcasting\advancements\recipes\tools\jeweler_hammer.json -004e0694b3bf53140be7df89a4defc255b800619 data\hexcasting\advancements\recipes\tools\focus_rotated.json -ea46e570a43cd3ea1cc78c51d9da45d93944730a data\hexcasting\advancements\recipes\redstone\directrix\empty.json -4d941fc399c6b7a470513a572ecd88982823da84 data\hexcasting\advancements\recipes\building_blocks\edified_wood.json -aa1caae7eba6aede0f179619488e2253b3b723dd data\hexcasting\recipes\focus_rotated.json -b1f8375aaf0d66035dee720ea59605f69fc0a154 data\hexcasting\recipes\edified_fence.json -1b092acfc3115702c74e141492e649d58512f259 data\hexcasting\recipes\staff\oak.json -0864e8b86bdad0bf9ab2ddeb0cd5a182808b5a0a data\hexcasting\recipes\default_colorizer.json -40ed21dc80d39236ca0e6d2cea60861c637cf931 data\hexcasting\advancements\recipes\misc\pride_colorizer_nonbinary.json -04902d4eca30560bc601a8196d82f74f3fa5b191 data\hexcasting\recipes\dynamicseal_spellbook.json -bd63b845e02ee4b1b9abe168a196335ccbed1ca5 data\hexcasting\recipes\scroll_paper_lantern.json -996c8361766377a70e0b5a5caff3076fc6031b0a data\hexcasting\recipes\impetus\empty.json -8b7136c206b799a2e394aa02316b0509674ff64f data\hexcasting\advancements\recipes\tools\staff\bamboo.json -c1541738df1ee41c362ad3b9c3a9f0e181bd5c62 data\hexcasting\recipes\pride_colorizer_plural.json -4a803e049915fd3c7144155ae3a1b05a917ea290 data\hexcasting\recipes\pride_colorizer_pansexual.json -71d38559bf455ea343ac0237a57db4d3f0833a7c data\hexcasting\advancements\recipes\misc\dye_colorizer_magenta.json -9ea4fe5272ce2241d98f30359f55cfc1936c7b48 data\hexcasting\advancements\recipes\tools\staff\cherry.json -72447ac69a0d85f91064180d3c852040a9e33832 data\hexcasting\recipes\pride_colorizer_asexual.json -a8cab28cffdf495253a320094d202fccc5aeb113 data\hexcasting\advancements\recipes\decorations\ancient_scroll_paper_lantern.json -14f3b217e150efbbff329d67aec96f818a1da99c data\hexcasting\recipes\dye_colorizer_purple.json -1e51cd4f527b3aea4d61d91829e47c191c9c05bb data\hexcasting\recipes\pride_colorizer_gay.json -f64fa00d85a9abb24e89b0d2c9f818001371f5e6 data\hexcasting\recipes\slate_block.json -a85cfbd7988f5df0b18d160591605aea8e6808d2 data\hexcasting\recipes\trinket.json -63189af501442318a90c16d6951e51c0c5d6d4f3 data\hexcasting\recipes\compat\farmersdelight\cutting\edified_log_purple.json -494aa470790ae46baebbf24ee5b76f5885c1af1a data\hexcasting\recipes\ageing_scroll_paper_lantern.json -bc8fe4d2f55fe119b0b146a71782a3d4788380b1 data\create\recipes\crushing\amethyst_block.json -7522be58b09554a3f1a54d5b2343c3eab01447a3 data\hexcasting\recipes\dye_colorizer_magenta.json -b624d103d944a8a1d4d8a9e85c198a5492b476f8 data\hexcasting\advancements\recipes\redstone\edified_trapdoor.json -a3130e3098e35b75afae4f31996d9ab7468e0bc3 data\hexcasting\advancements\recipes\tools\thought_knot.json -23eff6111b0385b66d3ad5fbabfc625f426517a6 data\hexcasting\advancements\recipes\brainsweep\brainsweep\directrix_redstone.json -c43fb770003c8d882fd9c1e7d1ecb5f196cba1ab data\hexcasting\recipes\cypher.json -2c292e12b5e85b1701740c222e5c5465799ad1dc data\hexcasting\recipes\pride_colorizer_aroace.json -dcc9bf721dd40724abcc69f1f7e8a1610dbf88f3 data\hexcasting\recipes\compat\farmersdelight\cutting\akashic_door.json -f77518b6993fe8e31de10af286c33ab72c0f9077 data\hexcasting\advancements\recipes\redstone\impetus\empty.json -93ed0491548920bc75797d18501c750ef07fe3ea data\hexcasting\advancements\recipes\misc\pride_colorizer_bisexual.json -27dc4a1647f264c45b27f5552fd9403a02853484 data\hexcasting\advancements\recipes\tools\spellbook.json -7166cd4355d11c209bc7749bc862caddcfd795fb data\hexcasting\recipes\dye_colorizer_cyan.json -b6720c1c73455ad817bac9b5ca2ca045c5c4050c data\hexcasting\recipes\pride_colorizer_agender.json -ed5c690324e3d9b55599f00f078ae225072a2e7f data\hexcasting\recipes\brainsweep\impetus_rightclick.json -c4b985635c3b1a519d7a83da65daba5bdd3a5f59 data\hexcasting\advancements\recipes\decorations\ageing_scroll_paper_lantern.json -846baaef37844216b57bb9b35e52b1bb6b56b413 data\hexcasting\advancements\recipes\decorations\scroll_small.json -441f336edb635e5d8c2a7183906fed1c501f06fd data\hexcasting\recipes\pride_colorizer_bisexual.json -f80dbf59957be175fbcd63224005e09c4cd1a122 data\hexcasting\recipes\compat\farmersdelight\cutting\edified_log_citrine.json -a72a0fcc0f3a81d31b30a7a626aef537796ca73b data\hexcasting\advancements\recipes\tools\staff\quenched.json -8f8773a541bc6a4a6c55a23f4f98b5da4f61a031 data\hexcasting\recipes\scroll_paper.json -4680e9dafcf9b60b3485609519d66eefcfd539bc data\hexcasting\recipes\staff\dark_oak.json -77369113dc54d1c64b9101861dd8a1930bf1c1c4 data\hexcasting\recipes\edified_wood.json -45915b542d8070f2502a4047218679b08033b12d data\hexcasting\advancements\recipes\decorations\scroll_paper_lantern.json -a366ea3750adc0d336ab8f318c40baed3f9c3eb7 data\hexcasting\recipes\brainsweep\impetus_storedplayer.json -151875101066f7af5788c7a2e1c6b342971a546a data\hexcasting\recipes\compat\farmersdelight\cutting\akashic_wood.json -b94bc4dd4a63db10af86c524ba00eae157c1824b data\hexcasting\advancements\recipes\building_blocks\edified_fence_gate.json -c2a0a489967db4064dfbe1ee6367e132665f3c00 data\hexcasting\recipes\edified_slab.json -5e28e2c352366720ce91b73f8c8c38e217f7198d data\hexcasting\recipes\edified_fence_gate.json -6493676f8ca93a7be8d70e25d69ddad935b3f16b data\hexcasting\advancements\recipes\tools\lens.json -b5946314683e5a823b577a18d13fb437a35aafd5 data\hexcasting\recipes\decompose_quenched_shard\charged.json -c03c81dc123294472e8bb6f836c319e96f8db4f5 data\hexcasting\advancements\recipes\building_blocks\edified_fence.json -b29f9d9c14e60ded1148680e2e0ef405b5a3c845 data\hexcasting\advancements\recipes\misc\uuid_colorizer.json -78958099bf4337ad281580d90f434b3074ad18c8 data\hexcasting\recipes\pride_colorizer_genderqueer.json -0b172aef920da7ba63fe152903ce005c1f5df5f1 data\hexcasting\recipes\staff\acacia.json -31ec6474ddae967a6c1dadf9be8292d375510364 data\hexcasting\advancements\recipes\building_blocks\edified_tile.json -d47352426739a0fc500a385d820d767a307e1d16 data\hexcasting\advancements\recipes\misc\dye_colorizer_black.json -095aeb2882c6849f10fb6536e7c780790778e5e7 data\hexcasting\recipes\staff\jungle.json -923e7cd200518042f11474713eca9ccad126dab7 data\hexcasting\recipes\staff\spruce.json -fd7c8325fcaa6a718e90c09251b447fb365523d4 data\hexcasting\recipes\pride_colorizer_demiboy.json -2b64261bd4aefdc55d35400f25835434f88856cf data\hexcasting\recipes\amethyst_tiles.json -12bd3d04c791ef16aad5e992f038d6726229a436 data\hexcasting\advancements\recipes\tools\artifact.json -de38d15e7a91c77df24c1dc954b3e98ee197876f data\hexcasting\recipes\focus.json -fd2f25b0a71806c96af5a307fad76f66de6210a4 data\hexcasting\advancements\recipes\building_blocks\slate_block.json -1ad54df5eaee3d1e810d2c91bd03f626084e30b6 data\hexcasting\recipes\edified_trapdoor.json -4aaefc65af5fe69d312247fdda7d983edf8dcd9a data\hexcasting\recipes\pride_colorizer_intersex.json -b20be6eb5a8b60567871444e65d773ec9a67ece1 data\hexcasting\recipes\staff\crimson.json -775560efa36581389c0319435bda035be262ed4f data\hexcasting\advancements\recipes\building_blocks\edified_stairs.json -ce9d0b976f7cc8ad4a0815bbea6c43115addb90f data\hexcasting\advancements\recipes\building_blocks\scroll_paper.json -db5ae3a2fda235cf1c83fd83e0026a262e668217 data\hexcasting\advancements\recipes\building_blocks\edified_slab.json -06ca609ba1a32f094cf6edbc989bc9ddaf9d342c data\hexcasting\advancements\recipes\misc\pride_colorizer_genderfluid.json -af8fe74b624df4a31727347b9826614a66092b0a data\hexcasting\advancements\recipes\misc\pride_colorizer_agender.json -664ce1a38c9b1c9ec21b7e078631e181fc0b2498 data\hexcasting\recipes\staff\edified.json -b6e762c198b9632defd7f8b11287702abecd681d data\hexcasting\recipes\staff\mindsplice.json -5401828f85e709b5817ecc8464dc63e536a730dc data\hexcasting\recipes\staff\cherry.json -51b047601368a103be166d907633b196d2d8a4e8 data\hexcasting\recipes\compat\farmersdelight\cutting\edified_log.json -42b8e462de1d7006de3a7658757377450e773107 data\hexcasting\advancements\recipes\misc\dye_colorizer_blue.json -499c5c09e3772989350f9ab3264b8692449a6dea data\hexcasting\advancements\recipes\misc\pride_colorizer_gay.json -30352d8ad510768770bb1b2d378959b7a502f825 data\hexcasting\advancements\recipes\brainsweep\brainsweep\impetus_look.json -6ed61e03c51dc653cd66e643a6d33fe9105ff171 data\hexcasting\advancements\recipes\brainsweep\brainsweep\directrix_boolean.json -0ead307e47242ba140584f6bd20088a1fa7c2909 data\hexcasting\recipes\directrix\empty.json -68ab70e0b4e432a3492767c5597ecd836f106714 data\hexcasting\advancements\recipes\tools\staff\mindsplice.json -5fab1b9c93304a53a4c305b511704458e4593444 data\hexcasting\recipes\pride_colorizer_demigirl.json -170af3c83a45f9550827cc48e4bb5a621d06d685 data\hexcasting\advancements\recipes\misc\pride_colorizer_transgender.json -7f2f29981df2ca4464ee0250180e670f5331f65b data\hexcasting\recipes\dye_colorizer_pink.json -61e53f02baefd31308e99407d56403dfc18e36e1 data\hexcasting\recipes\akashic_connector.json -eb9ebf77f0daa32f665a60888fcda19c940f0b2f data\hexcasting\advancements\recipes\misc\pride_colorizer_demigirl.json -7aa3bf4a3d6fb92743b29dfe89d50537fefc0db9 data\hexcasting\advancements\recipes\misc\pride_colorizer_intersex.json -410bfde90cb977db3f13814e94484fa11fca7cfc data\hexcasting\recipes\thought_knot.json -55ea553a96e1d6a54385890f7c48fe7b2bed6871 data\hexcasting\advancements\recipes\tools\trinket.json -e765ee2bd324240e8ed3d625be431de3281f0070 data\hexcasting\recipes\dye_colorizer_gray.json -ad647a2078099344ea7f9836a68e1bf8e8119277 data\hexcasting\advancements\recipes\misc\dye_colorizer_brown.json -8c043c7f6a7911b67324e2fd42f0b3b19a792af3 data\hexcasting\recipes\ancient_scroll_paper_lantern.json diff --git a/Fabric/src/generated/resources/data/c/tags/items/amethyst_dusts.json b/Fabric/src/generated/resources/data/c/tags/items/amethyst_dusts.json deleted file mode 100644 index 8fa008d02a..0000000000 --- a/Fabric/src/generated/resources/data/c/tags/items/amethyst_dusts.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_dust" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/c/tags/items/gems.json b/Fabric/src/generated/resources/data/c/tags/items/gems.json deleted file mode 100644 index e153c8295b..0000000000 --- a/Fabric/src/generated/resources/data/c/tags/items/gems.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:charged_amethyst" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_block.json b/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_block.json deleted file mode 100644 index a9466b4a43..0000000000 --- a/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_block.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "create" - ] - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_block" - } - ], - "processingTime": 150, - "results": [ - { - "count": 3, - "item": "minecraft:amethyst_shard" - }, - { - "chance": 0.5, - "count": 4, - "item": "hexcasting:amethyst_dust" - } - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json b/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json deleted file mode 100644 index 23069c5c26..0000000000 --- a/Fabric/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "create" - ] - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_cluster" - } - ], - "processingTime": 150, - "results": [ - { - "count": 7, - "item": "minecraft:amethyst_shard" - }, - { - "count": 5, - "item": "hexcasting:amethyst_dust" - }, - { - "chance": 0.25, - "item": "hexcasting:charged_amethyst" - } - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/tags/blocks/brittle.json b/Fabric/src/generated/resources/data/create/tags/blocks/brittle.json deleted file mode 100644 index b9a7d8674d..0000000000 --- a/Fabric/src/generated/resources/data/create/tags/blocks/brittle.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - { - "id": "#hexcasting:slate", - "required": false - } - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json deleted file mode 100644 index f82c8fda2c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/akashic_record" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/akashic_record" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json deleted file mode 100644 index 5ee9d46ffb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/budding_amethyst" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/budding_amethyst" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json deleted file mode 100644 index bc173bd32b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/directrix_boolean" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/directrix_boolean" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json deleted file mode 100644 index a6f48c1d34..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/directrix_redstone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/directrix_redstone" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json deleted file mode 100644 index 086d039702..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_look" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_look" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json deleted file mode 100644 index 04b20e6fc7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_rightclick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_rightclick" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 135a08cc3f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_storedplayer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_storedplayer" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json deleted file mode 100644 index 15691cf319..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/quench_allay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/quench_allay" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json deleted file mode 100644 index 8e0018f519..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_packing.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_packing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_packing" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json deleted file mode 100644 index c512415070..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_dust_unpacking.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_unpacking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_unpacking" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json deleted file mode 100644 index b6ab3fb1d4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:scroll_paper" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json deleted file mode 100644 index aa49266e09..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence_gate.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence_gate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence_gate" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json deleted file mode 100644 index 6f6e2c2337..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_panel.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_panel" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json deleted file mode 100644 index 12add8b1a5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block_from_slates.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block_from_slates" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block_from_slates" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json deleted file mode 100644 index 2d335c5e8a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json deleted file mode 100644 index d65dddf738..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/stripped_edified_wood.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:stripped_edified_log" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stripped_edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stripped_edified_wood" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json deleted file mode 100644 index 895f37a270..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json deleted file mode 100644 index 63a98dfc8d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_medium.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_medium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_medium" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json deleted file mode 100644 index 68357e8330..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_black.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_black" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json deleted file mode 100644 index b1d8d0917c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_brown.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_brown" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json deleted file mode 100644 index aaabb10574..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_green.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_green" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json deleted file mode 100644 index 4cc0d01d81..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_blue.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json deleted file mode 100644 index 7b475a18fe..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_light_gray.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json deleted file mode 100644 index ef137af43d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_magenta.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_magenta" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json deleted file mode 100644 index ba8b485f60..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_orange.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_orange" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json deleted file mode 100644 index 730d25023a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_purple.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_purple" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json deleted file mode 100644 index 8decf1fb68..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_white.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_white" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json deleted file mode 100644 index 9d4ee92484..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_yellow.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_yellow" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json deleted file mode 100644 index 0dee46c659..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_agender.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_agender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_agender" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json deleted file mode 100644 index e2a9be996e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aroace.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aroace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aroace" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json deleted file mode 100644 index 8bea973430..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_aromantic.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aromantic" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aromantic" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json deleted file mode 100644 index 935c3b3a13..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_asexual.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_asexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_asexual" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json deleted file mode 100644 index 9766430fc9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_bisexual.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_bisexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_bisexual" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json deleted file mode 100644 index d1c0e598e0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demiboy.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demiboy" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demiboy" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json deleted file mode 100644 index b83767cdc9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_demigirl.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demigirl" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demigirl" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json deleted file mode 100644 index a4d03097a3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_gay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_gay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_gay" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json deleted file mode 100644 index 3c83445f58..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderfluid" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderfluid" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json deleted file mode 100644 index d0a5c5ee5b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderqueer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderqueer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json deleted file mode 100644 index 9b1dfd07fa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_intersex.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_intersex" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_intersex" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json deleted file mode 100644 index 05a75a9ef3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_lesbian.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_lesbian" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_lesbian" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json deleted file mode 100644 index d8faac779d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_nonbinary" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_nonbinary" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json deleted file mode 100644 index 2938abc3e3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_pansexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_pansexual" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json deleted file mode 100644 index 096a3b8773..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_plural.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_plural" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_plural" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json deleted file mode 100644 index ef4569ca9a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_transgender.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_transgender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_transgender" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json deleted file mode 100644 index a9c62b86c9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_pressure_plate.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_pressure_plate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_pressure_plate" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json deleted file mode 100644 index 7cc848539e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/artifact.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:artifact" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:artifact" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json deleted file mode 100644 index 4494bd1974..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json deleted file mode 100644 index 70be25e6c0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mindsplice.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mindsplice" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mindsplice" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json deleted file mode 100644 index 359c43e79e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_connector" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_connector" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json deleted file mode 100644 index 32fb8948ab..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": [ - "minecraft:shears" - ] - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json deleted file mode 100644 index a6d08c88dc..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/aventurine_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": [ - "minecraft:shears" - ] - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:aventurine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json deleted file mode 100644 index 5df55816a5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/citrine_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": [ - "minecraft:shears" - ] - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:citrine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json deleted file mode 100644 index 86b06b41d9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] - } - } - ], - "name": "hexcasting:quenched_allay" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "add": true, - "conditions": [ - { - "chances": [ - 0.25, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "name": "hexcasting:quenched_allay_shard" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json b/Fabric/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json deleted file mode 100644 index 78e1601cb1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_tables/inject/amethyst_cluster.json +++ /dev/null @@ -1,191 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "minecraft:cluster_max_harvestables" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 1.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "minecraft:cluster_max_harvestables" - } - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 0.0 - }, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "minecraft:cluster_max_harvestables" - } - }, - { - "chances": [ - 0.25, - 0.35, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "enchantments": [ - { - "enchantment": "minecraft:silk_touch" - } - ] - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "tag": "minecraft:cluster_max_harvestables" - } - } - }, - { - "chance": 0.125, - "condition": "minecraft:random_chance" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:inject/amethyst_cluster" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/abacus.json b/Fabric/src/generated/resources/data/hexcasting/recipes/abacus.json deleted file mode 100644 index 0b922907fc..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/abacus.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "minecraft:planks" - } - }, - "pattern": [ - "WAW", - "SAS", - "WAW" - ], - "result": { - "item": "hexcasting:abacus" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json deleted file mode 100644 index 9014a11a36..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - [ - { - "item": "minecraft:brown_dye" - }, - { - "tag": "c:brown_dye" - }, - { - "tag": "c:brown_dyes" - } - ], - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - } - ], - "result": { - "count": 8, - "item": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json deleted file mode 100644 index 20ea2d020a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "C": { - "item": "minecraft:book" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "CCC", - "LPL" - ], - "result": { - "item": "hexcasting:akashic_bookshelf" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json deleted file mode 100644 index 414db2b6f2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_dust_unpacking.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust_block" - } - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json deleted file mode 100644 index 408880cf39..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/amethyst_sconce.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": [ - { - "item": "minecraft:copper_ingot" - }, - { - "tag": "c:copper_ingots" - } - ], - "T": { - "item": "hexcasting:charged_amethyst" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_sconce" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json deleted file mode 100644 index 237738b7ee..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - [ - { - "item": "minecraft:brown_dye" - }, - { - "tag": "c:brown_dye" - }, - { - "tag": "c:brown_dyes" - } - ], - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - } - ], - "result": { - "count": 8, - "item": "hexcasting:ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/artifact.json b/Fabric/src/generated/resources/data/hexcasting/recipes/artifact.json deleted file mode 100644 index 24e47285dd..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/artifact.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "D": { - "tag": "minecraft:music_discs" - }, - "F": [ - { - "item": "minecraft:gold_ingot" - }, - { - "tag": "c:gold_ingots" - } - ] - }, - "pattern": [ - " F ", - "FAF", - " D " - ], - "result": { - "item": "hexcasting:artifact" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json deleted file mode 100644 index 6ff7558133..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:akashic_connector" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 5, - "profession": "librarian" - }, - "result": { - "name": "hexcasting:akashic_record" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json deleted file mode 100644 index b58a6ec996..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "minecraft:amethyst_block" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 3 - }, - "result": { - "name": "minecraft:budding_amethyst" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json deleted file mode 100644 index fd1c128f51..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 1, - "profession": "shepherd" - }, - "result": { - "name": "hexcasting:directrix/boolean", - "properties": { - "energized": "false", - "facing": "north", - "state": "neither" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json deleted file mode 100644 index 3cfe40b7c0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 1, - "profession": "mason" - }, - "result": { - "name": "hexcasting:directrix/redstone", - "properties": { - "energized": "false", - "facing": "north", - "powered": "false" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 1bef4d4633..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 2, - "profession": "cleric" - }, - "result": { - "name": "hexcasting:impetus/redstone", - "properties": { - "energized": "false", - "facing": "north", - "powered": "true" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json deleted file mode 100644 index d7943e7a49..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/brainsweep/quench_allay.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "minecraft:amethyst_block" - }, - "cost": 100000, - "entityIn": { - "type": "entity_type", - "entityType": "minecraft:allay" - }, - "result": { - "name": "hexcasting:quenched_allay" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json deleted file mode 100644 index 49c7336a81..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "create" - ] - } - ], - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_shard" - } - ], - "processingTime": 150, - "results": [ - { - "count": 4, - "item": "hexcasting:amethyst_dust" - }, - { - "chance": 0.5, - "item": "hexcasting:amethyst_dust" - } - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json deleted file mode 100644 index 69b4010db5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_door" - } - ], - "result": [ - { - "item": "hexcasting:edified_planks" - } - ], - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json deleted file mode 100644 index 4c873b6e03..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_trapdoor" - } - ], - "result": [ - { - "item": "hexcasting:edified_planks" - } - ], - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json deleted file mode 100644 index 69e8a265bf..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_wood" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_wood" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json deleted file mode 100644 index 6efdf08fb9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json deleted file mode 100644 index 4d6103190c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_amethyst" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json deleted file mode 100644 index d9d042afcb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_aventurine" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json deleted file mode 100644 index 9ee0d9a40e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_citrine" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json b/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json deleted file mode 100644 index 375b7e4160..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "fabric:load_conditions": [ - { - "condition": "fabric:all_mods_loaded", - "values": [ - "farmersdelight" - ] - } - ], - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_purple" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool", - "tag": "c:tools/axes" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/cypher.json b/Fabric/src/generated/resources/data/hexcasting/recipes/cypher.json deleted file mode 100644 index 952b734751..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/cypher.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": [ - { - "item": "minecraft:copper_ingot" - }, - { - "tag": "c:copper_ingots" - } - ], - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "item": "hexcasting:cypher" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json deleted file mode 100644 index 4a52d88ccf..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:amethyst_dust" - } - ], - "result": { - "count": 31, - "item": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipes/directrix/empty.json deleted file mode 100644 index b622fd8844..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/directrix/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "C": { - "item": "minecraft:comparator" - }, - "O": { - "item": "minecraft:observer" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "CSS", - "OAO", - "SSC" - ], - "result": { - "item": "hexcasting:directrix/empty" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json deleted file mode 100644 index f9476f986d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_blue" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json deleted file mode 100644 index 7f5167cb35..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_cyan.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:cyan_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_cyan" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json deleted file mode 100644 index 85d69c57b3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_light_blue" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json deleted file mode 100644 index 2d66ef7c2a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/dye_colorizer_light_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_light_gray" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_door.json deleted file mode 100644 index 899954c7ee..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_door.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW", - "WW", - "WW" - ], - "result": { - "count": 3, - "item": "hexcasting:edified_door" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence.json deleted file mode 100644 index 25458e77e7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WSW", - "WSW" - ], - "result": { - "count": 3, - "item": "hexcasting:edified_fence" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json deleted file mode 100644 index 799b582fb9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_fence_gate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "SWS", - "SWS" - ], - "result": { - "item": "hexcasting:edified_fence_gate" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json deleted file mode 100644 index 3a1d77b05a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_pressure_plate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW" - ], - "result": { - "item": "hexcasting:edified_pressure_plate" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_slab.json deleted file mode 100644 index 83458a02bc..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_slab.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW" - ], - "result": { - "count": 6, - "item": "hexcasting:edified_slab" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_tile.json deleted file mode 100644 index a19f9d35b0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_tile.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW ", - "W W", - " WW" - ], - "result": { - "count": 6, - "item": "hexcasting:edified_tile" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipes/edified_wood.json deleted file mode 100644 index 17a530245a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/edified_wood.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "item": "hexcasting:edified_wood" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/focus.json b/Fabric/src/generated/resources/data/hexcasting/recipes/focus.json deleted file mode 100644 index 6c717fab81..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/focus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": [ - { - "item": "minecraft:glowstone_dust" - }, - { - "tag": "c:glowstone_dusts" - } - ], - "L": { - "item": "minecraft:leather" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GLG", - "PAP", - "GLG" - ], - "result": { - "item": "hexcasting:focus" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/recipes/focus_rotated.json deleted file mode 100644 index 64b5c1fd81..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/focus_rotated.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": [ - { - "item": "minecraft:glowstone_dust" - }, - { - "tag": "c:glowstone_dusts" - } - ], - "L": { - "item": "minecraft:leather" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GPG", - "LAL", - "GPG" - ], - "result": { - "item": "hexcasting:focus" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipes/impetus/empty.json deleted file mode 100644 index c0f772d643..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/impetus/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:iron_bars" - }, - "P": { - "item": "minecraft:purpur_block" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "PSS", - "BAB", - "SSP" - ], - "result": { - "item": "hexcasting:impetus/empty" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json deleted file mode 100644 index 8832d19167..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/jeweler_hammer.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "I": [ - { - "item": "minecraft:iron_ingot" - }, - { - "tag": "c:iron_ingots" - } - ], - "N": [ - { - "item": "minecraft:iron_nugget" - }, - { - "tag": "c:iron_nuggets" - } - ], - "S": [ - { - "item": "minecraft:stick" - }, - { - "tag": "c:wood_sticks" - } - ] - }, - "pattern": [ - "IAN", - " S ", - " S " - ], - "result": { - "item": "hexcasting:jeweler_hammer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json b/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json deleted file mode 100644 index d5f1d3054f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "type": "hexcasting:mod_conditional", - "default": { - "item": "minecraft:carrot" - }, - "if_loaded": { - "item": "farmersdelight:skillet" - }, - "modid": "farmersdelight" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_pansexual" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll.json b/Fabric/src/generated/resources/data/hexcasting/recipes/scroll.json deleted file mode 100644 index 50fa3bb410..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "PPA", - "PPP", - "PPP" - ], - "result": { - "item": "hexcasting:scroll" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_medium.json deleted file mode 100644 index ad3445812d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_medium.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "PP ", - "PP " - ], - "result": { - "item": "hexcasting:scroll_medium" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper.json deleted file mode 100644 index 18c3c67bec..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_paper.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:paper" - }, - "D": { - "item": "minecraft:paper" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "item": "hexcasting:scroll_paper" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_small.json deleted file mode 100644 index 1772485731..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/scroll_small.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "P " - ], - "result": { - "item": "hexcasting:scroll_small" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json deleted file mode 100644 index a04d33319a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/slate_block_from_slates.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "hexcasting:slate" - } - }, - "pattern": [ - "S", - "S" - ], - "result": { - "item": "hexcasting:slate_block" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipes/spellbook.json deleted file mode 100644 index f3dcf64681..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/spellbook.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:writable_book" - }, - "F": { - "item": "minecraft:chorus_fruit" - }, - "N": [ - { - "item": "minecraft:gold_nugget" - }, - { - "tag": "c:gold_nuggets" - } - ] - }, - "pattern": [ - "NBA", - "NFA", - "NBA" - ], - "result": { - "item": "hexcasting:spellbook" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/recipes/staff/acacia.json deleted file mode 100644 index b6dcd43429..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/acacia.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:acacia_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/acacia" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/recipes/staff/cherry.json deleted file mode 100644 index 36a96851b0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/staff/cherry.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:cherry_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/cherry" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json deleted file mode 100644 index c0cab6f42f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/stripped_edified_wood.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:stripped_edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "item": "hexcasting:stripped_edified_wood" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/recipes/thought_knot.json deleted file mode 100644 index 2f2c9f9504..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/thought_knot.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "equipment", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust" - }, - { - "item": "minecraft:string" - } - ], - "result": { - "item": "hexcasting:thought_knot" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/trinket.json b/Fabric/src/generated/resources/data/hexcasting/recipes/trinket.json deleted file mode 100644 index ce2ab679a7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/trinket.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": [ - { - "item": "minecraft:iron_ingot" - }, - { - "tag": "c:iron_ingots" - } - ], - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "item": "hexcasting:trinket" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json deleted file mode 100644 index 418123f8b7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipes/uuid_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "item": "hexcasting:uuid_colorizer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/action/can_start_enlighten.json b/Fabric/src/generated/resources/data/hexcasting/tags/action/can_start_enlighten.json deleted file mode 100644 index 86a6cd44ac..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/action/can_start_enlighten.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/action/per_world_pattern.json b/Fabric/src/generated/resources/data/hexcasting/tags/action/per_world_pattern.json deleted file mode 100644 index 86a6cd44ac..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/action/per_world_pattern.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/action/requires_enlightenment.json b/Fabric/src/generated/resources/data/hexcasting/tags/action/requires_enlightenment.json deleted file mode 100644 index 86a6cd44ac..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/action/requires_enlightenment.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json deleted file mode 100644 index ea830ffa1d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/brainswept_circle_components.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json deleted file mode 100644 index 61cb019a11..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/cheap_to_break_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:conjured_block", - "hexcasting:conjured_light" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/directrices.json deleted file mode 100644 index d30f04cb6f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/directrices.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_logs.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json deleted file mode 100644 index 39c375c539..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/edified_planks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/impeti.json deleted file mode 100644 index 0555067291..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/impeti.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json b/Fabric/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json deleted file mode 100644 index 036f0507d4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/blocks/water_plants.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:kelp", - "minecraft:kelp_plant", - "minecraft:seagrass", - "minecraft:tall_seagrass" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json deleted file mode 100644 index ea830ffa1d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/brainswept_circle_components.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/directrices.json deleted file mode 100644 index d30f04cb6f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/directrices.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_logs.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_logs.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_planks.json deleted file mode 100644 index 39c375c539..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/edified_planks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json deleted file mode 100644 index 76ab3105e8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/grants_root_advancement.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_dust", - "minecraft:amethyst_shard", - "hexcasting:charged_amethyst", - "hexcasting:creative_unlocker" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/impeti.json deleted file mode 100644 index 0555067291..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/impeti.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/phial_base.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/phial_base.json deleted file mode 100644 index b435278f57..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/phial_base.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:glass_bottle" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/seal_materials.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/seal_materials.json deleted file mode 100644 index ae13fc414c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/seal_materials.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:honeycomb" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/items/staves.json b/Fabric/src/generated/resources/data/hexcasting/tags/items/staves.json deleted file mode 100644 index eba74d80db..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/items/staves.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:staff/edified", - "hexcasting:staff/oak", - "hexcasting:staff/spruce", - "hexcasting:staff/birch", - "hexcasting:staff/jungle", - "hexcasting:staff/acacia", - "hexcasting:staff/dark_oak", - "hexcasting:staff/crimson", - "hexcasting:staff/warped", - "hexcasting:staff/mangrove", - "hexcasting:staff/cherry", - "hexcasting:staff/bamboo", - "hexcasting:staff/quenched", - "hexcasting:staff/mindsplice" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/buttons.json deleted file mode 100644 index 93d13da5f5..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/buttons.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json deleted file mode 100644 index 694b24cf8a..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/crystal_sound_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:conjured_light", - "hexcasting:conjured_block", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_sconce" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/doors.json deleted file mode 100644 index d63af5102c..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/doors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json deleted file mode 100644 index 4dff358b03..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/fence_gates.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/fences.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/fences.json deleted file mode 100644 index f64ac53060..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/fences.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/leaves.json deleted file mode 100644 index d0139bd0b9..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/leaves.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/logs_that_burn.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json deleted file mode 100644 index 87aeaeea67..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/axe.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:akashic_record", - "hexcasting:akashic_bookshelf", - "hexcasting:akashic_connector", - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood", - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile", - "hexcasting:edified_door", - "hexcasting:edified_trapdoor", - "hexcasting:edified_slab", - "hexcasting:edified_button", - "hexcasting:edified_stairs", - "hexcasting:edified_fence", - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json deleted file mode 100644 index d0139bd0b9..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/hoe.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json deleted file mode 100644 index 71a25063c6..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_tiles", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_pillar", - "hexcasting:slate", - "hexcasting:directrix/empty", - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean", - "hexcasting:impetus/empty", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/look", - "hexcasting:impetus/redstone", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_pillar", - "hexcasting:slate_amethyst_tiles", - "hexcasting:slate_amethyst_bricks", - "hexcasting:slate_amethyst_bricks_small", - "hexcasting:slate_amethyst_pillar", - "hexcasting:amethyst_sconce", - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_tiles", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json deleted file mode 100644 index 39b4fe0254..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/mineable/shovel.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_dust_block" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/planks.json deleted file mode 100644 index 39c375c539..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/planks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json deleted file mode 100644 index 9701e8c0a0..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/pressure_plates.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/slabs.json deleted file mode 100644 index b4894f4197..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/slabs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/stairs.json deleted file mode 100644 index f91ba79b2a..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/stairs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json deleted file mode 100644 index 1d0b4a8b68..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json deleted file mode 100644 index 4dff358b03..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/unstable_bottom_center.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json deleted file mode 100644 index 93d13da5f5..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_buttons.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json deleted file mode 100644 index d63af5102c..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json deleted file mode 100644 index ca68ade542..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_fences.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_fence", - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json deleted file mode 100644 index 9701e8c0a0..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_pressure_plates.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json deleted file mode 100644 index b4894f4197..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_slabs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json deleted file mode 100644 index f91ba79b2a..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_stairs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json deleted file mode 100644 index 1d0b4a8b68..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/items/buttons.json deleted file mode 100644 index 93d13da5f5..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/buttons.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/items/doors.json deleted file mode 100644 index d63af5102c..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/doors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/items/leaves.json deleted file mode 100644 index d0139bd0b9..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/leaves.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/items/logs.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/logs.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json deleted file mode 100644 index 8e226d8922..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/items/planks.json deleted file mode 100644 index 39c375c539..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/planks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/items/slabs.json deleted file mode 100644 index b4894f4197..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/slabs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/items/trapdoors.json deleted file mode 100644 index 1d0b4a8b68..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/trapdoors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json deleted file mode 100644 index 93d13da5f5..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_buttons.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_doors.json deleted file mode 100644 index d63af5102c..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_doors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json deleted file mode 100644 index 9701e8c0a0..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_pressure_plates.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json deleted file mode 100644 index b4894f4197..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_slabs.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json deleted file mode 100644 index 1d0b4a8b68..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/items/wooden_trapdoors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java index a9851c4ccf..033b7d5c33 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java @@ -18,6 +18,7 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; @@ -98,4 +99,9 @@ public boolean fabricAdditionalQuenchFrustumCheck(AABB aabb) { } return LEVEL_RENDERER_FRUSTUM.isVisible(aabb); } + + @Override + public String getModelLocVariant() { + return ModelResourceLocation.INVENTORY_VARIANT; + } } diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index e45b532b29..11a9de2ed5 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -20,6 +20,7 @@ configurations { canBeResolved = true canBeConsumed = false } + shadowCommon compileClasspath.extendsFrom common runtimeClasspath.extendsFrom common developmentNeoForge.extendsFrom common @@ -72,9 +73,11 @@ repositories { dependencies { neoForge "net.neoforged:neoforge:${neoforgeVersion}" - common(project(path: ':Common', configuration: 'namedElements')) { transitive false } + implementation(project(path: ':Common', configuration: 'namedElements')) { transitive false } shadowBundle(project(path: ':Common', configuration: 'transformProductionNeoForge')) { transitive false } - modImplementation "thedarkcolour:kotlinforforge-neoforge:$kotlinForForgeVersion" + modImplementation("thedarkcolour:kotlinforforge-neoforge:$kotlinForForgeVersion") { + exclude(group: "net.neoforged.fancymodloader", module: "loader") + } // === MANDATORY DEPS === @@ -107,6 +110,17 @@ dependencies { forgeRuntimeLibrary("io.wispforest:endec:0.1.8") forgeRuntimeLibrary("io.wispforest.endec:gson:0.1.5") forgeRuntimeLibrary("io.wispforest.endec:netty:0.1.4") + forgeRuntimeLibrary("io.wispforest.endec:jankson:0.1.5") + forgeRuntimeLibrary("org.jetbrains.kotlin:kotlin-reflect:2.1.20") + forgeRuntimeLibrary("org.jetbrains.kotlin:kotlin-stdlib:2.1.20") + forgeRuntimeLibrary("org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.20") + forgeRuntimeLibrary("org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.20") + forgeRuntimeLibrary("org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.10.2") + forgeRuntimeLibrary("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:1.10.2") + forgeRuntimeLibrary("org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.8.1") + forgeRuntimeLibrary("org.jetbrains.kotlinx:kotlinx-serialization-json-jvm:1.8.1") + forgeRuntimeLibrary("blue.endless:jankson:1.2.2") + forgeRuntimeLibrary("blue.endless:jankson:0.1.5") } def generatedResources = project(":Common").file("src/generated/resources") @@ -121,6 +135,7 @@ loom { programArgs "--all", "--mod", project.modID programArgs "--output", generatedResources.absolutePath + programArgs "--existing", project(":Common").file("src/main/resources").absolutePath programArgs "--existing", file("src/main/resources").absolutePath programArgs "--existing", generatedResources.absolutePath } diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index a35d3a6636..3b624541aa 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -3,6 +3,8 @@ neoforgeVersion=21.1.172 loom.platform=neoforge kotlinForForgeVersion=5.8.0 +kotlinBaseVersion=2.1.20 +kotlinxCoroutinesVersion= curiosVersion=9.5.1 caelusVersion=7.0.1+1.21.1 diff --git a/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_block.json b/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_block.json deleted file mode 100644 index 8ad54e92f0..0000000000 --- a/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_block.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "create" - } - ], - "recipe": { - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_block" - } - ], - "processingTime": 150, - "results": [ - { - "count": 3, - "item": "minecraft:amethyst_shard" - }, - { - "chance": 0.5, - "count": 4, - "item": "hexcasting:amethyst_dust" - } - ] - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json b/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json deleted file mode 100644 index 6673126525..0000000000 --- a/Neoforge/src/generated/resources/data/create/recipes/crushing/amethyst_cluster.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "create" - } - ], - "recipe": { - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_cluster" - } - ], - "processingTime": 150, - "results": [ - { - "count": 7, - "item": "minecraft:amethyst_shard" - }, - { - "count": 5, - "item": "hexcasting:amethyst_dust" - }, - { - "chance": 0.25, - "item": "hexcasting:charged_amethyst" - } - ] - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json deleted file mode 100644 index f82c8fda2c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_record.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/akashic_record" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/akashic_record" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json deleted file mode 100644 index 5ee9d46ffb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/budding_amethyst" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/budding_amethyst" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json deleted file mode 100644 index bc173bd32b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/directrix_boolean" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/directrix_boolean" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json deleted file mode 100644 index a6f48c1d34..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/directrix_redstone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/directrix_redstone" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json deleted file mode 100644 index 086d039702..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_look" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_look" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json deleted file mode 100644 index 04b20e6fc7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_rightclick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_rightclick" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 135a08cc3f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/impetus_storedplayer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/impetus_storedplayer" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json deleted file mode 100644 index 15691cf319..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/quench_allay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:brainsweep/quench_allay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:brainsweep/quench_allay" - ] - }, - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json deleted file mode 100644 index 597cd897de..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/amethyst_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json deleted file mode 100644 index 8571f6d3d4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_fence.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json deleted file mode 100644 index 804061465a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_planks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_logs" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_planks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_planks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json deleted file mode 100644 index 6643da70b9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_slab.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_slab" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json deleted file mode 100644 index 7a5b84d82a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_stairs.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_stairs" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json deleted file mode 100644 index 2ec6b30c1f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_tile.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_tile" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_tile" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json deleted file mode 100644 index b71516d7ad..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/edified_wood.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:edified_log" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_wood" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json deleted file mode 100644 index fb582f87d5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/scroll_paper.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json deleted file mode 100644 index 163e9a2934..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/building_blocks/slate_block.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json deleted file mode 100644 index 5108125752..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:scroll_paper_lantern" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ageing_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ageing_scroll_paper_lantern" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json deleted file mode 100644 index 171b4cc129..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/amethyst_sconce.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_sconce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_sconce" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json deleted file mode 100644 index 52289cc5d7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:ancient_scroll_paper" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper_lantern" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json deleted file mode 100644 index 41ac798ebc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_paper_lantern.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:scroll_paper" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper_lantern" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json deleted file mode 100644 index 5954c5786a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/scroll_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json deleted file mode 100644 index 3e3481c8c3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/decorations/slate.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json deleted file mode 100644 index 1acebe3d17..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/food/sub_sandwich.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:sub_sandwich" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:sub_sandwich" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json deleted file mode 100644 index b8f39b64f4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/charged" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/charged" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json deleted file mode 100644 index c4bd1a2c6b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/dust" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/dust" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json deleted file mode 100644 index b82d6e8ddc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/shard" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json deleted file mode 100644 index 4b94e3d969..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/default_colorizer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:default_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:default_colorizer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json deleted file mode 100644 index b0cb050ec7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_blue.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_blue" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json deleted file mode 100644 index aa88e65b3a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_cyan.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_cyan" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json deleted file mode 100644 index e77b2b4530..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_gray.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_gray" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json deleted file mode 100644 index 08e2cf3998..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_lime.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_lime" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json deleted file mode 100644 index 27e62c96d5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_pink.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_pink" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json deleted file mode 100644 index 532eb81eb6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/dye_colorizer_red.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_red" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json deleted file mode 100644 index 2938abc3e3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/pride_colorizer_pansexual.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_pansexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_pansexual" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json deleted file mode 100644 index c2e9457bb0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/misc/uuid_colorizer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:uuid_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:uuid_colorizer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json deleted file mode 100644 index d000cbc46a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_bookshelf.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_bookshelf" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_bookshelf" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json deleted file mode 100644 index 595f53ddba..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/akashic_connector.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_connector" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "enlightenment", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_connector" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json deleted file mode 100644 index 191916c5b2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_button.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_button" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_button" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json deleted file mode 100644 index ea21e4a47a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_door.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_door" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_door" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json deleted file mode 100644 index cc15ca3960..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/redstone/edified_trapdoor.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_trapdoor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_trapdoor" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json deleted file mode 100644 index 7349713cba..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/abacus.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:abacus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:abacus" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json deleted file mode 100644 index 46fe0a95a4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/cypher.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:cypher" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:cypher" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json deleted file mode 100644 index c1d45f0e21..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/focus_rotated.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus_rotated" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus_rotated" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json deleted file mode 100644 index 0c38f6dcbd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/jeweler_hammer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_shard" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:jeweler_hammer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:jeweler_hammer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json deleted file mode 100644 index c6820e5be0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/lens.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:lens" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:lens" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json deleted file mode 100644 index 9ef640f920..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/spellbook.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_chorus": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:chorus_fruit" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_focus": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:focus" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:spellbook" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_focus", - "has_chorus", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:spellbook" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json deleted file mode 100644 index 3517416d4d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/acacia.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/acacia" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/acacia" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json deleted file mode 100644 index a6fa449db3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/bamboo.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/bamboo" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/bamboo" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json deleted file mode 100644 index ca645b3d2c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/birch.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/birch" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/birch" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json deleted file mode 100644 index a28e8cbc57..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/cherry.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/cherry" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/cherry" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json deleted file mode 100644 index 273e6c63c9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/crimson.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/crimson" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/crimson" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json deleted file mode 100644 index 3f85a91af5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/dark_oak.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/dark_oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/dark_oak" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json deleted file mode 100644 index f311992c36..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/edified.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/edified" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/edified" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json deleted file mode 100644 index e60ee05a9a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/jungle.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/jungle" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/jungle" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json deleted file mode 100644 index 395c776a6e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/mangrove.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mangrove" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mangrove" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json deleted file mode 100644 index 9a2a7e466c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/oak.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/oak" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json deleted file mode 100644 index efa9566aeb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/quenched.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/quenched" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/quenched" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json deleted file mode 100644 index d9a25ac43a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/spruce.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/spruce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/spruce" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json deleted file mode 100644 index a4cda1f21b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/staff/warped.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:charged_amethyst" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/warped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/warped" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json deleted file mode 100644 index 86e0897a2d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/thought_knot.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:thought_knot" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:thought_knot" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json deleted file mode 100644 index 09a44adcc8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancements/recipes/tools/trinket.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:trinket" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:trinket" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json deleted file mode 100644 index 78a36f62ec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_bookshelf.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_bookshelf" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_bookshelf" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json deleted file mode 100644 index 359c43e79e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_connector.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_connector" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_connector" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json deleted file mode 100644 index 5c93f81681..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_record.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_record" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_record" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json deleted file mode 100644 index 3d39f82987..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json deleted file mode 100644 index 7c054a0aab..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_dust_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_dust_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json deleted file mode 100644 index 2eeb112461..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json deleted file mode 100644 index e2c38fe09e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_sconce.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_sconce" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_sconce" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json deleted file mode 100644 index 13010296ca..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json deleted file mode 100644 index 2bb2887920..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json deleted file mode 100644 index f2ea006a03..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json deleted file mode 100644 index 7510be752b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/boolean.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/boolean" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/boolean" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json deleted file mode 100644 index 056282de33..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/empty" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json deleted file mode 100644 index b130eb19de..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/directrix/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/redstone" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json deleted file mode 100644 index a24172124e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_button.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_button" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_button" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json deleted file mode 100644 index 942a65484f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_door.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "block": "hexcasting:edified_door", - "condition": "minecraft:block_state_property", - "properties": { - "half": "lower" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_door" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_door" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json deleted file mode 100644 index f45eea22be..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json deleted file mode 100644 index 01cbf2a5e1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_fence_gate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence_gate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence_gate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json deleted file mode 100644 index 396a3fcb45..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json deleted file mode 100644 index d6c0759bfa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_amethyst" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_amethyst" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json deleted file mode 100644 index 31892f2177..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_aventurine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_aventurine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_aventurine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json deleted file mode 100644 index 21ac1cd0fb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_citrine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_citrine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_citrine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json deleted file mode 100644 index f9c2c33343..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_log_purple.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_purple" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_purple" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json deleted file mode 100644 index 83cb1f1b59..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_panel.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_panel" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_panel" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json deleted file mode 100644 index 5f1b5f7280..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_planks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_planks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_planks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json deleted file mode 100644 index d733b30a49..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_pressure_plate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_pressure_plate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_pressure_plate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json deleted file mode 100644 index 0bdc00f6b3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_slab.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_slab" - } - ], - "functions": [ - { - "add": false, - "conditions": [ - { - "block": "hexcasting:edified_slab", - "condition": "minecraft:block_state_property", - "properties": { - "type": "double" - } - } - ], - "count": 2.0, - "function": "minecraft:set_count" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_slab" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json deleted file mode 100644 index 7cb6566434..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_stairs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_stairs" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_stairs" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json deleted file mode 100644 index dbc6bd1426..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_tile.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_tile" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_tile" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json deleted file mode 100644 index f76ea0437f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_trapdoor.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_trapdoor" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_trapdoor" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json deleted file mode 100644 index 2e1faee977..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json deleted file mode 100644 index 67fe1185ac..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/empty" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json deleted file mode 100644 index 87f6f0ef09..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/look.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/look" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/look" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json deleted file mode 100644 index 1635ee4207..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/redstone" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json deleted file mode 100644 index 37f1e9df10..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/impetus/rightclick.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/rightclick" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/rightclick" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json deleted file mode 100644 index eb1a87b224..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json deleted file mode 100644 index 879089b6d4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json deleted file mode 100644 index 0c81157382..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json deleted file mode 100644 index 8c3d628108..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json deleted file mode 100644 index ccea471c66..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json deleted file mode 100644 index 6a7e00b7d0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:copy_nbt", - "ops": [ - { - "op": "replace", - "source": "pattern", - "target": "BlockEntityTag.pattern" - } - ], - "source": "block_entity" - } - ], - "name": "hexcasting:slate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json deleted file mode 100644 index f6d9ea8d1a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 6f7cfb5825..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json deleted file mode 100644 index 96dd26f7fb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json deleted file mode 100644 index e91ebad3ce..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json deleted file mode 100644 index d136fe7460..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json deleted file mode 100644 index d42593f8d5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json deleted file mode 100644 index f77a608dec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json deleted file mode 100644 index 060b60ebf9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json deleted file mode 100644 index 81cda1a13a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/slate_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json deleted file mode 100644 index 7dab40f3a1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json deleted file mode 100644 index 60b009f032..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_tables/blocks/stripped_edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_connector.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_connector.json deleted file mode 100644 index 218b59c739..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/akashic_connector.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "1": { - "item": "hexcasting:amethyst_dust" - }, - "2": { - "item": "minecraft:amethyst_shard" - }, - "3": { - "item": "hexcasting:charged_amethyst" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "123", - "LPL" - ], - "result": { - "count": 4, - "item": "hexcasting:akashic_connector" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json deleted file mode 100644 index a3fdd6a2bf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_dust_packing.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "X": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "XX", - "XX" - ], - "result": { - "item": "hexcasting:amethyst_dust_block" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json deleted file mode 100644 index d41a67a785..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/amethyst_tiles.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:amethyst_block" - }, - "D": { - "item": "minecraft:amethyst_block" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "item": "hexcasting:amethyst_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json deleted file mode 100644 index 743cc6dddf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:ancient_scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "item": "hexcasting:ancient_scroll_paper_lantern" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json deleted file mode 100644 index 6ff7558133..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_record.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:akashic_connector" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 5, - "profession": "librarian" - }, - "result": { - "name": "hexcasting:akashic_record" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json deleted file mode 100644 index 59338fc079..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_look.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 2, - "profession": "fletcher" - }, - "result": { - "name": "hexcasting:impetus/look", - "properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json deleted file mode 100644 index 5a106bd801..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "villager", - "minLevel": 2, - "profession": "toolsmith" - }, - "result": { - "name": "hexcasting:impetus/rightclick", - "properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json deleted file mode 100644 index 29c34436ed..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/create/crushing/amethyst_shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "create" - } - ], - "recipe": { - "type": "create:crushing", - "ingredients": [ - { - "item": "minecraft:amethyst_shard" - } - ], - "processingTime": 150, - "results": [ - { - "count": 4, - "item": "hexcasting:amethyst_dust" - }, - { - "chance": 0.5, - "item": "hexcasting:amethyst_dust" - } - ] - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json deleted file mode 100644 index 0105627704..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_door.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_door" - } - ], - "result": [ - { - "item": "hexcasting:edified_planks" - } - ], - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_dig" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json deleted file mode 100644 index 5564ed6205..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_trapdoor.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_trapdoor" - } - ], - "result": [ - { - "item": "hexcasting:edified_planks" - } - ], - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_dig" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json deleted file mode 100644 index 3a30ec3957..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/akashic_wood.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_wood" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_wood" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json deleted file mode 100644 index ef802db2be..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json deleted file mode 100644 index c44c2caaf7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_amethyst.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_amethyst" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json deleted file mode 100644 index ba426fbb3a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_aventurine.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_aventurine" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json deleted file mode 100644 index 1251a678b9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_citrine.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_citrine" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json deleted file mode 100644 index c5995bf927..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/compat/farmersdelight/cutting/edified_log_purple.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type": "forge:conditional", - "recipes": [ - { - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "farmersdelight" - } - ], - "recipe": { - "type": "farmersdelight:cutting", - "ingredients": [ - { - "item": "hexcasting:edified_log_purple" - } - ], - "result": [ - { - "item": "hexcasting:stripped_edified_log" - }, - { - "item": "farmersdelight:tree_bark" - } - ], - "sound": "minecraft:item.axe.strip", - "tool": { - "type": "farmersdelight:tool_action", - "action": "axe_strip" - } - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/cypher.json deleted file mode 100644 index ab99a0fd0d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/cypher.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "tag": "forge:ingots/copper" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "item": "hexcasting:cypher" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json deleted file mode 100644 index 9521bacbca..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:charged_amethyst" - } - ], - "result": { - "count": 4, - "item": "hexcasting:charged_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json deleted file mode 100644 index af22d06105..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "minecraft:amethyst_shard" - } - ], - "result": { - "count": 7, - "item": "minecraft:amethyst_shard" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/default_colorizer.json deleted file mode 100644 index 133b5b03bd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/default_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:copper_ingot" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "item": "hexcasting:default_colorizer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json deleted file mode 100644 index 4131cc5643..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_black.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:black_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_black" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json deleted file mode 100644 index 3d5459144d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_brown.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:brown_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_brown" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json deleted file mode 100644 index c491dd7650..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_gray" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json deleted file mode 100644 index 96665a82f9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_green.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:green_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_green" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json deleted file mode 100644 index f35899f58f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_lime.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:lime_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_lime" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json deleted file mode 100644 index 0449c7a303..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_magenta.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:magenta_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_magenta" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json deleted file mode 100644 index fd2b480a12..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_orange.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:orange_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_orange" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json deleted file mode 100644 index e208a43556..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_pink.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:pink_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_pink" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json deleted file mode 100644 index da671f3ea5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_purple.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:purple_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_purple" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json deleted file mode 100644 index 3ff5f19d65..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_red.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:red_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_red" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json deleted file mode 100644 index 8902cb1a1e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_white.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:white_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_white" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json deleted file mode 100644 index 1bddee39eb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dye_colorizer_yellow.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:yellow_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:dye_colorizer_yellow" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json deleted file mode 100644 index 28edc09f6d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_focus.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_focus", - "category": "misc" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json deleted file mode 100644 index 5bf703566d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/dynamicseal_spellbook.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_spellbook", - "category": "misc" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_button.json deleted file mode 100644 index 6e250ed1b2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_button.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "redstone", - "ingredients": [ - { - "tag": "hexcasting:edified_planks" - } - ], - "result": { - "item": "hexcasting:edified_button" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_panel.json deleted file mode 100644 index af912d5628..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_panel.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "tag": "hexcasting:edified_planks" - }, - "D": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "DCD", - "C C", - "DCD" - ], - "result": { - "count": 8, - "item": "hexcasting:edified_panel" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_planks.json deleted file mode 100644 index 10317d4b79..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_planks.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "hexcasting:edified_logs" - } - ], - "result": { - "count": 4, - "item": "hexcasting:edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_stairs.json deleted file mode 100644 index cd17064167..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_stairs.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "W ", - "WW ", - "WWW" - ], - "result": { - "count": 4, - "item": "hexcasting:edified_stairs" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json deleted file mode 100644 index fbe3f9b3da..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/edified_trapdoor.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW", - "WWW" - ], - "result": { - "count": 2, - "item": "hexcasting:edified_trapdoor" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json deleted file mode 100644 index d92f22f1df..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_agender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_agender" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json deleted file mode 100644 index cc747fec3e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aroace.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat_seeds" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_aroace" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json deleted file mode 100644 index 421af44c47..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_aromantic.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:arrow" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_aromantic" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json deleted file mode 100644 index 75245d5013..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_asexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:bread" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_asexual" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json deleted file mode 100644 index 3f13a25e91..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_bisexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_bisexual" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json deleted file mode 100644 index 9ff3ece1ec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demiboy.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_iron" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_demiboy" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json deleted file mode 100644 index e8a8322040..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_demigirl.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_copper" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_demigirl" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json deleted file mode 100644 index da08d7d2e0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_gay.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:stone_brick_wall" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_gay" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json deleted file mode 100644 index ee84a87e50..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:water_bucket" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_genderfluid" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json deleted file mode 100644 index a5d706b3f3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass_bottle" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_genderqueer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json deleted file mode 100644 index 592a3f5cf2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_intersex.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:azalea" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_intersex" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json deleted file mode 100644 index eefd174c3b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_lesbian.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:honeycomb" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_lesbian" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json deleted file mode 100644 index 87d59afe53..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:moss_block" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_nonbinary" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json deleted file mode 100644 index d5f1d3054f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_pansexual.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "type": "hexcasting:mod_conditional", - "default": { - "item": "minecraft:carrot" - }, - "if_loaded": { - "item": "farmersdelight:skillet" - }, - "modid": "farmersdelight" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_pansexual" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json deleted file mode 100644 index 9b616724e0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_plural.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:repeater" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_plural" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json deleted file mode 100644 index cb09eaa35e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/pride_colorizer_transgender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:egg" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "item": "hexcasting:pride_colorizer_transgender" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json deleted file mode 100644 index 3b9aa6a140..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "item": "hexcasting:scroll_paper_lantern" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/slate.json deleted file mode 100644 index 43863d1aa2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "S": { - "item": "minecraft:deepslate" - } - }, - "pattern": [ - " A ", - "SSS" - ], - "result": { - "count": 6, - "item": "hexcasting:slate" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block.json deleted file mode 100644 index 5bd7d2052f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/slate_block.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:deepslate" - }, - "D": { - "item": "minecraft:deepslate" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "item": "hexcasting:slate_block" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json deleted file mode 100644 index 2796a8b049..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/bamboo.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:bamboo_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/bamboo" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/birch.json deleted file mode 100644 index 7c91ab627a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/birch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:birch_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/birch" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/crimson.json deleted file mode 100644 index 105a164cfc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/crimson.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:crimson_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/crimson" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json deleted file mode 100644 index 14ed432aa3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/dark_oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:dark_oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/dark_oak" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/edified.json deleted file mode 100644 index 8ce0918491..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/edified.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:edified_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/edified" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/jungle.json deleted file mode 100644 index 383db50fce..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/jungle.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:jungle_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/jungle" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json deleted file mode 100644 index 33fb46a8ab..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mangrove.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:mangrove_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/mangrove" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json deleted file mode 100644 index 8b14081c0c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/mindsplice.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:brainswept_circle_components" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/mindsplice" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/oak.json deleted file mode 100644 index 5c8e796b5a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/oak" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/quenched.json deleted file mode 100644 index 170c8373fc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/quenched.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:quenched_allay_shard" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/quenched" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/spruce.json deleted file mode 100644 index 3670939402..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/spruce.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:spruce_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/spruce" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/warped.json deleted file mode 100644 index c8f1b7ce6a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/staff/warped.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:warped_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "item": "hexcasting:staff/warped" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json deleted file mode 100644 index 020b0ec65f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "item": "minecraft:amethyst_block" - }, - "result": "hexcasting:amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json deleted file mode 100644 index 937deabc39..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipes/sub_sandwich.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "B": { - "item": "minecraft:bread" - }, - "C": { - "item": "minecraft:cooked_beef" - }, - "S": { - "item": "minecraft:stick" - } - }, - "pattern": [ - " SA", - " C ", - " B " - ], - "result": { - "item": "hexcasting:sub_sandwich" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java index 063845abf8..d642eb88f3 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java @@ -16,6 +16,7 @@ import net.neoforged.neoforge.client.model.generators.BlockModelBuilder; import net.neoforged.neoforge.client.model.generators.ConfiguredModel; import net.neoforged.neoforge.client.model.generators.ModelBuilder; +import net.neoforged.neoforge.client.model.generators.ModelFile; import net.neoforged.neoforge.common.data.ExistingFileHelper; import static net.neoforged.neoforge.client.model.generators.ModelProvider.BLOCK_FOLDER; @@ -25,6 +26,12 @@ public HexBlockStatesAndModels(PackOutput output, ExistingFileHelper exFileHelpe super(output, HexAPI.MOD_ID, exFileHelper); } + @Override + protected void blockAndItem(Block block, BlockModelBuilder model) { + simpleBlock(block, model); + simpleBlockItem(block, model); + } + @Override protected void registerStatesAndModels() { var slateModel = models().getExistingFile(modLoc("slate")); @@ -124,7 +131,7 @@ protected void registerStatesAndModels() { }); - blockAndItem(HexBlocks.SLATE_BLOCK, models().cubeAll("slate_block", modLoc("block/slate"))); + blockAndItem(HexBlocks.SLATE_BLOCK, models().cubeAll("slate_block", modLoc("block/slate_block"))); blockAndItem(HexBlocks.SLATE_TILES, models().cubeAll("block/deco/slate_tiles", modLoc("block/deco/slate_tiles"))); blockAndItem(HexBlocks.SLATE_BRICKS, models().cubeAll("block/deco/slate_bricks", modLoc("block/deco/slate_bricks"))); blockAndItem(HexBlocks.SLATE_BRICKS_SMALL, models().cubeAll("block/deco/slate_bricks_small", modLoc("block/deco/slate_bricks_small"))); @@ -288,7 +295,7 @@ private void arrowCircleBlock(Block block, String name, ResourceLocation particl } private void impetus(Block block, String name, String stub, boolean itemModelIsLit) { - arrowCircleBlock(block, name, modLoc("block/slate"), + arrowCircleBlock(block, name, modLoc("block/slate_block"), "impetus/" + stub + "/front", "impetus/" + stub + "/top", "impetus/" + stub + "/left", @@ -299,7 +306,7 @@ private void impetus(Block block, String name, String stub, boolean itemModelIsL } private void doAllTheDirectrices() { - arrowCircleBlock(HexBlocks.EMPTY_DIRECTRIX, "directrix/empty", modLoc("block/slate"), + arrowCircleBlock(HexBlocks.EMPTY_DIRECTRIX, "directrix/empty", modLoc("block/slate_block"), "directrix/empty/front", "directrix/empty/top", "directrix/empty/left", "directrix/empty/right", "directrix/empty/back", false); @@ -338,7 +345,7 @@ private void doAllTheDirectrices() { var modelName = "block/circle/directrix/redstone/" + litness + "_" + poweredness + "_" + dir.getName(); var model = models().cube(modelName, modLoc(bottom), modLoc(top), modLoc(front), modLoc(back), modLoc(left), modLoc(right)) - .texture("particle", modLoc("block/slate")); + .texture("particle", modLoc("block/slate_block")); if (isLit && !isPowered && dir == Direction.EAST) { // getBuilder does not add the block/etc to the front if the path contains any slashes @@ -395,7 +402,7 @@ private void doAllTheDirectrices() { var modelName = "block/circle/directrix/boolean/" + litness + "_" + boolStateString + "_" + dir.getName(); var model = models().cube(modelName, modLoc(bottom), modLoc(top), modLoc(front), modLoc(back), modLoc(left), modLoc(right)) - .texture("particle", modLoc("block/slate")); + .texture("particle", modLoc("block/slate_block")); if (isLit && boolState == BlockBooleanDirectrix.State.FALSE && dir == Direction.EAST) { // getBuilder does not add the block/etc to the front if the path contains any slashes diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java index 0419b3c49a..451bbe82b6 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeClientXplatImpl.java @@ -9,6 +9,7 @@ import net.minecraft.client.renderer.item.ItemProperties; import net.minecraft.client.renderer.item.ItemPropertyFunction; import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.client.resources.model.ModelResourceLocation; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; @@ -66,4 +67,9 @@ public void restoreLastFilter(AbstractTexture texture) { public boolean fabricAdditionalQuenchFrustumCheck(AABB aabb) { return true; // forge fixes this with a patch so we just say "yep" } + + @Override + public String getModelLocVariant() { + return ModelResourceLocation.STANDALONE_VARIANT; + } } From b0debeca86a000159d8dc5fcbea3edb90f8fe741 Mon Sep 17 00:00:00 2001 From: Ski <34802236+SuperKnux@users.noreply.github.com> Date: Wed, 3 Dec 2025 12:21:51 -0600 Subject: [PATCH 21/51] * Finally finished datagen! --- .../hexcasting/datagen/HexLootTables.java | 4 + .../datagen/tag/HexBlockTagProvider.java | 2 +- Fabric/build.gradle | 6 +- Fabric/libs/jankson-1.2.3.jar | Bin 0 -> 75817 bytes .../data/c/tags/item/amethyst_dusts.json | 5 + .../resources/data/c/tags/item/gems.json | 5 + .../data/create/tags/block/brittle.json | 8 + .../recipes/brainsweep/akashic_record.json | 35 +++ .../recipes/brainsweep/budding_amethyst.json | 35 +++ .../recipes/brainsweep/directrix_boolean.json | 35 +++ .../brainsweep/directrix_redstone.json | 35 +++ .../recipes/brainsweep/impetus_look.json | 35 +++ .../brainsweep/impetus_rightclick.json | 35 +++ .../brainsweep/impetus_storedplayer.json | 35 +++ .../recipes/brainsweep/quench_allay.json | 35 +++ .../amethyst_dust_packing.json | 32 +++ .../amethyst_dust_unpacking.json | 32 +++ .../building_blocks/amethyst_tiles.json | 32 +++ .../building_blocks/ancient_scroll_paper.json | 32 +++ .../building_blocks/edified_fence.json | 32 +++ .../building_blocks/edified_fence_gate.json | 32 +++ .../building_blocks/edified_panel.json | 32 +++ .../building_blocks/edified_planks.json | 32 +++ .../recipes/building_blocks/edified_slab.json | 32 +++ .../building_blocks/edified_stairs.json | 32 +++ .../recipes/building_blocks/edified_tile.json | 32 +++ .../recipes/building_blocks/edified_wood.json | 32 +++ .../recipes/building_blocks/scroll_paper.json | 32 +++ .../recipes/building_blocks/slate_block.json | 32 +++ .../slate_block_from_slates.json | 32 +++ .../stonecutting/amethyst_tiles.json | 32 +++ .../stripped_edified_wood.json | 32 +++ .../ageing_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/amethyst_sconce.json | 32 +++ .../ancient_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll.json | 32 +++ .../recipes/decorations/scroll_medium.json | 32 +++ .../decorations/scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll_small.json | 32 +++ .../recipes/decorations/slate.json | 32 +++ .../recipes/food/sub_sandwich.json | 32 +++ .../decompose_quenched_shard/charged.json | 32 +++ .../misc/decompose_quenched_shard/dust.json | 32 +++ .../misc/decompose_quenched_shard/shard.json | 32 +++ .../recipes/misc/default_colorizer.json | 32 +++ .../recipes/misc/dye_colorizer_black.json | 32 +++ .../recipes/misc/dye_colorizer_blue.json | 32 +++ .../recipes/misc/dye_colorizer_brown.json | 32 +++ .../recipes/misc/dye_colorizer_cyan.json | 32 +++ .../recipes/misc/dye_colorizer_gray.json | 32 +++ .../recipes/misc/dye_colorizer_green.json | 32 +++ .../misc/dye_colorizer_light_blue.json | 32 +++ .../misc/dye_colorizer_light_gray.json | 32 +++ .../recipes/misc/dye_colorizer_lime.json | 32 +++ .../recipes/misc/dye_colorizer_magenta.json | 32 +++ .../recipes/misc/dye_colorizer_orange.json | 32 +++ .../recipes/misc/dye_colorizer_pink.json | 32 +++ .../recipes/misc/dye_colorizer_purple.json | 32 +++ .../recipes/misc/dye_colorizer_red.json | 32 +++ .../recipes/misc/dye_colorizer_white.json | 32 +++ .../recipes/misc/dye_colorizer_yellow.json | 32 +++ .../recipes/misc/pride_colorizer_agender.json | 32 +++ .../recipes/misc/pride_colorizer_aroace.json | 32 +++ .../misc/pride_colorizer_aromantic.json | 32 +++ .../recipes/misc/pride_colorizer_asexual.json | 32 +++ .../misc/pride_colorizer_bisexual.json | 32 +++ .../recipes/misc/pride_colorizer_demiboy.json | 32 +++ .../misc/pride_colorizer_demigirl.json | 32 +++ .../recipes/misc/pride_colorizer_gay.json | 32 +++ .../misc/pride_colorizer_genderfluid.json | 32 +++ .../misc/pride_colorizer_genderqueer.json | 32 +++ .../misc/pride_colorizer_intersex.json | 32 +++ .../recipes/misc/pride_colorizer_lesbian.json | 32 +++ .../misc/pride_colorizer_nonbinary.json | 32 +++ .../recipes/misc/pride_colorizer_plural.json | 32 +++ .../misc/pride_colorizer_transgender.json | 32 +++ .../recipes/misc/uuid_colorizer.json | 32 +++ .../recipes/redstone/akashic_bookshelf.json | 35 +++ .../recipes/redstone/akashic_ligature.json | 35 +++ .../recipes/redstone/directrix/empty.json | 35 +++ .../recipes/redstone/edified_button.json | 32 +++ .../recipes/redstone/edified_door.json | 32 +++ .../redstone/edified_pressure_plate.json | 32 +++ .../recipes/redstone/edified_trapdoor.json | 32 +++ .../recipes/redstone/impetus/empty.json | 35 +++ .../advancement/recipes/tools/abacus.json | 32 +++ .../advancement/recipes/tools/artifact.json | 32 +++ .../advancement/recipes/tools/cypher.json | 32 +++ .../advancement/recipes/tools/focus.json | 32 +++ .../recipes/tools/focus_rotated.json | 32 +++ .../recipes/tools/jeweler_hammer.json | 32 +++ .../advancement/recipes/tools/lens.json | 32 +++ .../advancement/recipes/tools/spellbook.json | 43 ++++ .../recipes/tools/staff/acacia.json | 32 +++ .../recipes/tools/staff/bamboo.json | 32 +++ .../recipes/tools/staff/birch.json | 32 +++ .../recipes/tools/staff/cherry.json | 32 +++ .../recipes/tools/staff/crimson.json | 32 +++ .../recipes/tools/staff/dark_oak.json | 32 +++ .../recipes/tools/staff/edified.json | 32 +++ .../recipes/tools/staff/jungle.json | 32 +++ .../recipes/tools/staff/mangrove.json | 32 +++ .../recipes/tools/staff/mindsplice.json | 32 +++ .../advancement/recipes/tools/staff/oak.json | 32 +++ .../recipes/tools/staff/quenched.json | 32 +++ .../recipes/tools/staff/spruce.json | 32 +++ .../recipes/tools/staff/warped.json | 32 +++ .../recipes/tools/thought_knot.json | 32 +++ .../advancement/recipes/tools/trinket.json | 32 +++ .../loot_table/blocks/akashic_bookshelf.json | 15 ++ .../loot_table/blocks/akashic_ligature.json | 15 ++ .../loot_table/blocks/akashic_record.json | 15 ++ .../loot_table/blocks/amethyst_bricks.json | 15 ++ .../blocks/amethyst_bricks_small.json | 15 ++ .../blocks/amethyst_dust_block.json | 15 ++ .../blocks/amethyst_edified_leaves.json | 54 +++++ .../loot_table/blocks/amethyst_pillar.json | 15 ++ .../loot_table/blocks/amethyst_sconce.json | 15 ++ .../loot_table/blocks/amethyst_tiles.json | 15 ++ .../blocks/ancient_scroll_paper.json | 15 ++ .../blocks/ancient_scroll_paper_lantern.json | 15 ++ .../blocks/aventurine_edified_leaves.json | 54 +++++ .../blocks/citrine_edified_leaves.json | 54 +++++ .../loot_table/blocks/directrix/boolean.json | 15 ++ .../loot_table/blocks/directrix/empty.json | 15 ++ .../loot_table/blocks/directrix/redstone.json | 15 ++ .../loot_table/blocks/edified_button.json | 15 ++ .../loot_table/blocks/edified_door.json | 24 ++ .../loot_table/blocks/edified_fence.json | 15 ++ .../loot_table/blocks/edified_fence_gate.json | 15 ++ .../loot_table/blocks/edified_log.json | 15 ++ .../blocks/edified_log_amethyst.json | 15 ++ .../blocks/edified_log_aventurine.json | 15 ++ .../blocks/edified_log_citrine.json | 15 ++ .../loot_table/blocks/edified_log_purple.json | 15 ++ .../loot_table/blocks/edified_panel.json | 15 ++ .../loot_table/blocks/edified_planks.json | 15 ++ .../blocks/edified_pressure_plate.json | 15 ++ .../loot_table/blocks/edified_slab.json | 34 +++ .../loot_table/blocks/edified_stairs.json | 15 ++ .../loot_table/blocks/edified_tile.json | 15 ++ .../loot_table/blocks/edified_trapdoor.json | 15 ++ .../loot_table/blocks/edified_wood.json | 15 ++ .../loot_table/blocks/impetus/empty.json | 15 ++ .../loot_table/blocks/impetus/look.json | 15 ++ .../loot_table/blocks/impetus/redstone.json | 15 ++ .../loot_table/blocks/impetus/rightclick.json | 15 ++ .../loot_table/blocks/quenched_allay.json | 69 ++++++ .../blocks/quenched_allay_bricks.json | 15 ++ .../blocks/quenched_allay_bricks_small.json | 15 ++ .../blocks/quenched_allay_tiles.json | 15 ++ .../loot_table/blocks/scroll_paper.json | 15 ++ .../blocks/scroll_paper_lantern.json | 15 ++ .../hexcasting/loot_table/blocks/slate.json | 24 ++ .../blocks/slate_amethyst_bricks.json | 15 ++ .../blocks/slate_amethyst_bricks_small.json | 15 ++ .../blocks/slate_amethyst_pillar.json | 15 ++ .../blocks/slate_amethyst_tiles.json | 15 ++ .../loot_table/blocks/slate_block.json | 15 ++ .../loot_table/blocks/slate_bricks.json | 15 ++ .../loot_table/blocks/slate_bricks_small.json | 15 ++ .../loot_table/blocks/slate_pillar.json | 15 ++ .../loot_table/blocks/slate_tiles.json | 15 ++ .../blocks/stripped_edified_log.json | 15 ++ .../blocks/stripped_edified_wood.json | 15 ++ .../loot_table/inject/amethyst_cluster.json | 211 ++++++++++++++++++ .../data/hexcasting/recipe/abacus.json | 24 ++ .../recipe/ageing_scroll_paper_lantern.json | 45 ++++ .../hexcasting/recipe/akashic_bookshelf.json | 24 ++ .../hexcasting/recipe/akashic_ligature.json | 30 +++ .../recipe/amethyst_dust_packing.json | 17 ++ .../recipe/amethyst_dust_unpacking.json | 13 ++ .../hexcasting/recipe/amethyst_sconce.json | 25 +++ .../hexcasting/recipe/amethyst_tiles.json | 24 ++ .../recipe/ancient_scroll_paper.json | 45 ++++ .../recipe/ancient_scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/artifact.json | 29 +++ .../recipe/brainsweep/akashic_record.json | 16 ++ .../recipe/brainsweep/budding_amethyst.json | 15 ++ .../recipe/brainsweep/directrix_boolean.json | 21 ++ .../recipe/brainsweep/directrix_redstone.json | 21 ++ .../recipe/brainsweep/impetus_look.json | 20 ++ .../recipe/brainsweep/impetus_rightclick.json | 20 ++ .../brainsweep/impetus_storedplayer.json | 21 ++ .../recipe/brainsweep/quench_allay.json | 15 ++ .../data/hexcasting/recipe/cypher.json | 26 +++ .../decompose_quenched_shard/charged.json | 16 ++ .../recipe/decompose_quenched_shard/dust.json | 16 ++ .../decompose_quenched_shard/shard.json | 16 ++ .../hexcasting/recipe/default_colorizer.json | 24 ++ .../hexcasting/recipe/directrix/empty.json | 27 +++ .../recipe/dye_colorizer_black.json | 21 ++ .../hexcasting/recipe/dye_colorizer_blue.json | 21 ++ .../recipe/dye_colorizer_brown.json | 21 ++ .../hexcasting/recipe/dye_colorizer_cyan.json | 21 ++ .../hexcasting/recipe/dye_colorizer_gray.json | 21 ++ .../recipe/dye_colorizer_green.json | 21 ++ .../recipe/dye_colorizer_light_blue.json | 21 ++ .../recipe/dye_colorizer_light_gray.json | 21 ++ .../hexcasting/recipe/dye_colorizer_lime.json | 21 ++ .../recipe/dye_colorizer_magenta.json | 21 ++ .../recipe/dye_colorizer_orange.json | 21 ++ .../hexcasting/recipe/dye_colorizer_pink.json | 21 ++ .../recipe/dye_colorizer_purple.json | 21 ++ .../hexcasting/recipe/dye_colorizer_red.json | 21 ++ .../recipe/dye_colorizer_white.json | 21 ++ .../recipe/dye_colorizer_yellow.json | 21 ++ .../hexcasting/recipe/dynamicseal_focus.json | 4 + .../recipe/dynamicseal_spellbook.json | 4 + .../hexcasting/recipe/edified_button.json | 13 ++ .../data/hexcasting/recipe/edified_door.json | 18 ++ .../data/hexcasting/recipe/edified_fence.json | 20 ++ .../hexcasting/recipe/edified_fence_gate.json | 20 ++ .../data/hexcasting/recipe/edified_panel.json | 21 ++ .../hexcasting/recipe/edified_planks.json | 13 ++ .../recipe/edified_pressure_plate.json | 16 ++ .../data/hexcasting/recipe/edified_slab.json | 16 ++ .../hexcasting/recipe/edified_stairs.json | 18 ++ .../data/hexcasting/recipe/edified_tile.json | 18 ++ .../hexcasting/recipe/edified_trapdoor.json | 17 ++ .../data/hexcasting/recipe/edified_wood.json | 17 ++ .../data/hexcasting/recipe/focus.json | 32 +++ .../data/hexcasting/recipe/focus_rotated.json | 32 +++ .../data/hexcasting/recipe/impetus/empty.json | 27 +++ .../hexcasting/recipe/jeweler_hammer.json | 42 ++++ .../data/hexcasting/recipe/lens.json | 21 ++ .../recipe/pride_colorizer_agender.json | 21 ++ .../recipe/pride_colorizer_aroace.json | 21 ++ .../recipe/pride_colorizer_aromantic.json | 21 ++ .../recipe/pride_colorizer_asexual.json | 21 ++ .../recipe/pride_colorizer_bisexual.json | 21 ++ .../recipe/pride_colorizer_demiboy.json | 21 ++ .../recipe/pride_colorizer_demigirl.json | 21 ++ .../recipe/pride_colorizer_gay.json | 21 ++ .../recipe/pride_colorizer_genderfluid.json | 21 ++ .../recipe/pride_colorizer_genderqueer.json | 21 ++ .../recipe/pride_colorizer_intersex.json | 21 ++ .../recipe/pride_colorizer_lesbian.json | 21 ++ .../recipe/pride_colorizer_nonbinary.json | 21 ++ .../recipe/pride_colorizer_plural.json | 21 ++ .../recipe/pride_colorizer_transgender.json | 21 ++ .../data/hexcasting/recipe/scroll.json | 21 ++ .../data/hexcasting/recipe/scroll_medium.json | 21 ++ .../data/hexcasting/recipe/scroll_paper.json | 24 ++ .../recipe/scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/scroll_small.json | 20 ++ .../data/hexcasting/recipe/slate.json | 20 ++ .../data/hexcasting/recipe/slate_block.json | 24 ++ .../recipe/slate_block_from_slates.json | 17 ++ .../data/hexcasting/recipe/spellbook.json | 32 +++ .../data/hexcasting/recipe/staff/acacia.json | 24 ++ .../data/hexcasting/recipe/staff/bamboo.json | 24 ++ .../data/hexcasting/recipe/staff/birch.json | 24 ++ .../data/hexcasting/recipe/staff/cherry.json | 24 ++ .../data/hexcasting/recipe/staff/crimson.json | 24 ++ .../hexcasting/recipe/staff/dark_oak.json | 24 ++ .../data/hexcasting/recipe/staff/edified.json | 24 ++ .../data/hexcasting/recipe/staff/jungle.json | 24 ++ .../hexcasting/recipe/staff/mangrove.json | 24 ++ .../hexcasting/recipe/staff/mindsplice.json | 24 ++ .../data/hexcasting/recipe/staff/oak.json | 24 ++ .../hexcasting/recipe/staff/quenched.json | 24 ++ .../data/hexcasting/recipe/staff/spruce.json | 24 ++ .../data/hexcasting/recipe/staff/warped.json | 24 ++ .../recipe/stonecutting/amethyst_tiles.json | 10 + .../recipe/stripped_edified_wood.json | 17 ++ .../data/hexcasting/recipe/sub_sandwich.json | 27 +++ .../data/hexcasting/recipe/thought_knot.json | 16 ++ .../data/hexcasting/recipe/trinket.json | 26 +++ .../hexcasting/recipe/uuid_colorizer.json | 24 ++ .../block/brainswept_circle_components.json | 6 + .../tags/block/cheap_to_break_block.json | 6 + .../hexcasting/tags/block/directrices.json | 6 + .../hexcasting/tags/block/edified_logs.json | 12 + .../hexcasting/tags/block/edified_planks.json | 7 + .../tags/block/hex_unbreakable.json | 8 + .../data/hexcasting/tags/block/impeti.json | 7 + .../hexcasting/tags/block/water_plants.json | 8 + .../action/can_start_enlighten.json | 18 ++ .../hexcasting/action/per_world_pattern.json | 18 ++ .../action/requires_enlightenment.json | 18 ++ .../item/brainswept_circle_components.json | 6 + .../hexcasting/tags/item/directrices.json | 6 + .../hexcasting/tags/item/edified_logs.json | 12 + .../hexcasting/tags/item/edified_planks.json | 7 + .../tags/item/grants_root_advancement.json | 8 + .../data/hexcasting/tags/item/impeti.json | 7 + .../data/hexcasting/tags/item/phial_base.json | 5 + .../hexcasting/tags/item/seal_materials.json | 5 + .../data/hexcasting/tags/item/staves.json | 18 ++ .../data/minecraft/tags/block/buttons.json | 5 + .../tags/block/crystal_sound_blocks.json | 8 + .../data/minecraft/tags/block/doors.json | 5 + .../minecraft/tags/block/fence_gates.json | 5 + .../data/minecraft/tags/block/fences.json | 5 + .../data/minecraft/tags/block/leaves.json | 7 + .../data/minecraft/tags/block/logs.json | 12 + .../minecraft/tags/block/logs_that_burn.json | 12 + .../minecraft/tags/block/mineable/axe.json | 25 +++ .../minecraft/tags/block/mineable/hoe.json | 7 + .../tags/block/mineable/pickaxe.json | 30 +++ .../minecraft/tags/block/mineable/shovel.json | 5 + .../data/minecraft/tags/block/planks.json | 7 + .../minecraft/tags/block/pressure_plates.json | 5 + .../data/minecraft/tags/block/slabs.json | 5 + .../data/minecraft/tags/block/stairs.json | 5 + .../data/minecraft/tags/block/trapdoors.json | 5 + .../tags/block/unstable_bottom_center.json | 5 + .../minecraft/tags/block/wooden_buttons.json | 5 + .../minecraft/tags/block/wooden_doors.json | 5 + .../minecraft/tags/block/wooden_fences.json | 6 + .../tags/block/wooden_pressure_plates.json | 5 + .../minecraft/tags/block/wooden_slabs.json | 5 + .../minecraft/tags/block/wooden_stairs.json | 5 + .../tags/block/wooden_trapdoors.json | 5 + .../data/minecraft/tags/item/buttons.json | 5 + .../data/minecraft/tags/item/doors.json | 5 + .../data/minecraft/tags/item/leaves.json | 7 + .../data/minecraft/tags/item/logs.json | 12 + .../minecraft/tags/item/logs_that_burn.json | 12 + .../data/minecraft/tags/item/planks.json | 7 + .../data/minecraft/tags/item/slabs.json | 5 + .../data/minecraft/tags/item/trapdoors.json | 5 + .../minecraft/tags/item/wooden_buttons.json | 5 + .../minecraft/tags/item/wooden_doors.json | 5 + .../tags/item/wooden_pressure_plates.json | 5 + .../minecraft/tags/item/wooden_slabs.json | 5 + .../minecraft/tags/item/wooden_trapdoors.json | 5 + .../hexcasting/fabric/FabricHexInitializer.kt | 19 +- .../datagen/HexFabricDataGenerators.java | 8 + .../fabric/xplat/FabricXplatImpl.java | 6 +- Neoforge/build.gradle | 14 +- .../blockstates/akashic_bookshelf.json | 107 +++++++++ .../blockstates/akashic_ligature.json | 7 + .../blockstates/akashic_record.json | 7 + .../blockstates/amethyst_bricks.json | 7 + .../blockstates/amethyst_bricks_small.json | 7 + .../blockstates/amethyst_dust_block.json | 7 + .../blockstates/amethyst_edified_leaves.json | 7 + .../blockstates/amethyst_pillar.json | 30 +++ .../blockstates/amethyst_sconce.json | 7 + .../blockstates/amethyst_tiles.json | 7 + .../blockstates/ancient_scroll_paper.json | 7 + .../ancient_scroll_paper_lantern.json | 7 + .../aventurine_edified_leaves.json | 7 + .../blockstates/citrine_edified_leaves.json | 7 + .../blockstates/conjured_block.json | 7 + .../blockstates/conjured_light.json | 7 + .../blockstates/directrix/boolean.json | 142 ++++++++++++ .../blockstates/directrix/empty.json | 50 +++++ .../blockstates/directrix/redstone.json | 96 ++++++++ .../blockstates/edified_button.json | 118 ++++++++++ .../hexcasting/blockstates/edified_door.json | 124 ++++++++++ .../hexcasting/blockstates/edified_fence.json | 48 ++++ .../blockstates/edified_fence_gate.json | 80 +++++++ .../hexcasting/blockstates/edified_log.json | 16 ++ .../blockstates/edified_log_amethyst.json | 16 ++ .../blockstates/edified_log_aventurine.json | 16 ++ .../blockstates/edified_log_citrine.json | 16 ++ .../blockstates/edified_log_purple.json | 16 ++ .../hexcasting/blockstates/edified_panel.json | 7 + .../blockstates/edified_planks.json | 17 ++ .../blockstates/edified_pressure_plate.json | 10 + .../hexcasting/blockstates/edified_slab.json | 13 ++ .../blockstates/edified_stairs.json | 209 +++++++++++++++++ .../hexcasting/blockstates/edified_tile.json | 7 + .../blockstates/edified_trapdoor.json | 68 ++++++ .../hexcasting/blockstates/edified_wood.json | 16 ++ .../hexcasting/blockstates/impetus/empty.json | 50 +++++ .../hexcasting/blockstates/impetus/look.json | 50 +++++ .../blockstates/impetus/redstone.json | 96 ++++++++ .../blockstates/impetus/rightclick.json | 50 +++++ .../blockstates/quenched_allay.json | 7 + .../blockstates/quenched_allay_bricks.json | 7 + .../quenched_allay_bricks_small.json | 7 + .../blockstates/quenched_allay_tiles.json | 7 + .../hexcasting/blockstates/scroll_paper.json | 7 + .../blockstates/scroll_paper_lantern.json | 7 + .../assets/hexcasting/blockstates/slate.json | 122 ++++++++++ .../blockstates/slate_amethyst_bricks.json | 15 ++ .../slate_amethyst_bricks_small.json | 15 ++ .../blockstates/slate_amethyst_pillar.json | 16 ++ .../blockstates/slate_amethyst_tiles.json | 7 + .../hexcasting/blockstates/slate_block.json | 7 + .../hexcasting/blockstates/slate_bricks.json | 7 + .../blockstates/slate_bricks_small.json | 7 + .../hexcasting/blockstates/slate_pillar.json | 16 ++ .../hexcasting/blockstates/slate_tiles.json | 7 + .../blockstates/stripped_edified_log.json | 16 ++ .../blockstates/stripped_edified_wood.json | 16 ++ .../models/block/akashic_bookshelf.json | 68 ++++++ .../models/block/akashic_bookshelf_1.json | 6 + .../models/block/akashic_bookshelf_2.json | 6 + .../models/block/akashic_bookshelf_3.json | 6 + .../models/block/akashic_bookshelf_4.json | 6 + .../models/block/akashic_bookshelf_empty.json | 8 + .../models/block/akashic_ligature.json | 6 + .../models/block/akashic_record.json | 87 ++++++++ .../models/block/amethyst_dust_block.json | 6 + .../models/block/amethyst_edified_leaves.json | 7 + .../models/block/ancient_scroll_paper.json | 6 + .../block/ancient_scroll_paper_lantern.json | 8 + .../block/aventurine_edified_leaves.json | 7 + .../directrix/boolean/dim_false_down.json | 12 + .../directrix/boolean/dim_false_east.json | 12 + .../directrix/boolean/dim_false_north.json | 12 + .../directrix/boolean/dim_false_south.json | 12 + .../directrix/boolean/dim_false_up.json | 12 + .../directrix/boolean/dim_false_west.json | 12 + .../directrix/boolean/dim_neither_down.json | 12 + .../directrix/boolean/dim_neither_east.json | 12 + .../directrix/boolean/dim_neither_north.json | 12 + .../directrix/boolean/dim_neither_south.json | 12 + .../directrix/boolean/dim_neither_up.json | 12 + .../directrix/boolean/dim_neither_west.json | 12 + .../directrix/boolean/dim_true_down.json | 12 + .../directrix/boolean/dim_true_east.json | 12 + .../directrix/boolean/dim_true_north.json | 12 + .../directrix/boolean/dim_true_south.json | 12 + .../circle/directrix/boolean/dim_true_up.json | 12 + .../directrix/boolean/dim_true_west.json | 12 + .../directrix/boolean/lit_false_down.json | 12 + .../directrix/boolean/lit_false_east.json | 12 + .../directrix/boolean/lit_false_north.json | 12 + .../directrix/boolean/lit_false_south.json | 12 + .../directrix/boolean/lit_false_up.json | 12 + .../directrix/boolean/lit_false_west.json | 12 + .../directrix/boolean/lit_neither_down.json | 12 + .../directrix/boolean/lit_neither_east.json | 12 + .../directrix/boolean/lit_neither_north.json | 12 + .../directrix/boolean/lit_neither_south.json | 12 + .../directrix/boolean/lit_neither_up.json | 12 + .../directrix/boolean/lit_neither_west.json | 12 + .../directrix/boolean/lit_true_down.json | 12 + .../directrix/boolean/lit_true_east.json | 12 + .../directrix/boolean/lit_true_north.json | 12 + .../directrix/boolean/lit_true_south.json | 12 + .../circle/directrix/boolean/lit_true_up.json | 12 + .../directrix/boolean/lit_true_west.json | 12 + .../circle/directrix/empty/dim_down.json | 12 + .../circle/directrix/empty/dim_east.json | 12 + .../circle/directrix/empty/dim_north.json | 12 + .../circle/directrix/empty/dim_south.json | 12 + .../block/circle/directrix/empty/dim_up.json | 12 + .../circle/directrix/empty/dim_west.json | 12 + .../circle/directrix/empty/lit_down.json | 12 + .../circle/directrix/empty/lit_east.json | 12 + .../circle/directrix/empty/lit_north.json | 12 + .../circle/directrix/empty/lit_south.json | 12 + .../block/circle/directrix/empty/lit_up.json | 12 + .../circle/directrix/empty/lit_west.json | 12 + .../directrix/redstone/dim_powered_down.json | 12 + .../directrix/redstone/dim_powered_east.json | 12 + .../directrix/redstone/dim_powered_north.json | 12 + .../directrix/redstone/dim_powered_south.json | 12 + .../directrix/redstone/dim_powered_up.json | 12 + .../directrix/redstone/dim_powered_west.json | 12 + .../redstone/dim_unpowered_down.json | 12 + .../redstone/dim_unpowered_east.json | 12 + .../redstone/dim_unpowered_north.json | 12 + .../redstone/dim_unpowered_south.json | 12 + .../directrix/redstone/dim_unpowered_up.json | 12 + .../redstone/dim_unpowered_west.json | 12 + .../directrix/redstone/lit_powered_down.json | 12 + .../directrix/redstone/lit_powered_east.json | 12 + .../directrix/redstone/lit_powered_north.json | 12 + .../directrix/redstone/lit_powered_south.json | 12 + .../directrix/redstone/lit_powered_up.json | 12 + .../directrix/redstone/lit_powered_west.json | 12 + .../redstone/lit_unpowered_down.json | 12 + .../redstone/lit_unpowered_east.json | 12 + .../redstone/lit_unpowered_north.json | 12 + .../redstone/lit_unpowered_south.json | 12 + .../directrix/redstone/lit_unpowered_up.json | 12 + .../redstone/lit_unpowered_west.json | 12 + .../block/circle/impetus/empty/dim_down.json | 12 + .../block/circle/impetus/empty/dim_east.json | 12 + .../block/circle/impetus/empty/dim_north.json | 12 + .../block/circle/impetus/empty/dim_south.json | 12 + .../block/circle/impetus/empty/dim_up.json | 12 + .../block/circle/impetus/empty/dim_west.json | 12 + .../block/circle/impetus/empty/lit_down.json | 12 + .../block/circle/impetus/empty/lit_east.json | 12 + .../block/circle/impetus/empty/lit_north.json | 12 + .../block/circle/impetus/empty/lit_south.json | 12 + .../block/circle/impetus/empty/lit_up.json | 12 + .../block/circle/impetus/empty/lit_west.json | 12 + .../block/circle/impetus/look/dim_down.json | 12 + .../block/circle/impetus/look/dim_east.json | 12 + .../block/circle/impetus/look/dim_north.json | 12 + .../block/circle/impetus/look/dim_south.json | 12 + .../block/circle/impetus/look/dim_up.json | 12 + .../block/circle/impetus/look/dim_west.json | 12 + .../block/circle/impetus/look/lit_down.json | 12 + .../block/circle/impetus/look/lit_east.json | 12 + .../block/circle/impetus/look/lit_north.json | 12 + .../block/circle/impetus/look/lit_south.json | 12 + .../block/circle/impetus/look/lit_up.json | 12 + .../block/circle/impetus/look/lit_west.json | 12 + .../circle/impetus/redstone/dim_down.json | 12 + .../circle/impetus/redstone/dim_east.json | 12 + .../circle/impetus/redstone/dim_north.json | 12 + .../circle/impetus/redstone/dim_south.json | 12 + .../block/circle/impetus/redstone/dim_up.json | 12 + .../circle/impetus/redstone/dim_west.json | 12 + .../circle/impetus/redstone/lit_down.json | 12 + .../circle/impetus/redstone/lit_east.json | 12 + .../circle/impetus/redstone/lit_north.json | 12 + .../circle/impetus/redstone/lit_south.json | 12 + .../block/circle/impetus/redstone/lit_up.json | 12 + .../circle/impetus/redstone/lit_west.json | 12 + .../circle/impetus/rightclick/dim_down.json | 12 + .../circle/impetus/rightclick/dim_east.json | 12 + .../circle/impetus/rightclick/dim_north.json | 12 + .../circle/impetus/rightclick/dim_south.json | 12 + .../circle/impetus/rightclick/dim_up.json | 12 + .../circle/impetus/rightclick/dim_west.json | 12 + .../circle/impetus/rightclick/lit_down.json | 12 + .../circle/impetus/rightclick/lit_east.json | 12 + .../circle/impetus/rightclick/lit_north.json | 12 + .../circle/impetus/rightclick/lit_south.json | 12 + .../circle/impetus/rightclick/lit_up.json | 12 + .../circle/impetus/rightclick/lit_west.json | 12 + .../models/block/citrine_edified_leaves.json | 7 + .../hexcasting/models/block/conjured.json | 6 + .../models/block/deco/amethyst_bricks.json | 6 + .../block/deco/amethyst_bricks_small.json | 6 + .../models/block/deco/amethyst_pillar.json | 8 + .../models/block/deco/amethyst_tiles.json | 6 + .../block/deco/quenched_allay_bricks_0.json | 6 + .../block/deco/quenched_allay_bricks_1.json | 6 + .../block/deco/quenched_allay_bricks_2.json | 6 + .../block/deco/quenched_allay_bricks_3.json | 6 + .../deco/quenched_allay_bricks_small_0.json | 6 + .../deco/quenched_allay_bricks_small_1.json | 6 + .../deco/quenched_allay_bricks_small_2.json | 6 + .../deco/quenched_allay_bricks_small_3.json | 6 + .../block/deco/quenched_allay_tiles_0.json | 6 + .../block/deco/quenched_allay_tiles_1.json | 6 + .../block/deco/quenched_allay_tiles_2.json | 6 + .../block/deco/quenched_allay_tiles_3.json | 6 + .../block/deco/slate_amethyst_bricks_0.json | 6 + .../block/deco/slate_amethyst_bricks_1.json | 6 + .../block/deco/slate_amethyst_bricks_2.json | 6 + .../deco/slate_amethyst_bricks_small_0.json | 6 + .../deco/slate_amethyst_bricks_small_1.json | 6 + .../deco/slate_amethyst_bricks_small_2.json | 6 + .../block/deco/slate_amethyst_tiles.json | 6 + .../models/block/deco/slate_bricks.json | 6 + .../models/block/deco/slate_bricks_small.json | 6 + .../models/block/deco/slate_tiles.json | 6 + .../models/block/edified_button.json | 6 + .../models/block/edified_button_pressed.json | 6 + .../block/edified_door_bottom_left.json | 8 + .../block/edified_door_bottom_left_open.json | 8 + .../block/edified_door_bottom_right.json | 8 + .../block/edified_door_bottom_right_open.json | 8 + .../models/block/edified_door_top_left.json | 8 + .../block/edified_door_top_left_open.json | 8 + .../models/block/edified_door_top_right.json | 8 + .../block/edified_door_top_right_open.json | 8 + .../models/block/edified_fence_gate.json | 6 + .../models/block/edified_fence_gate_open.json | 6 + .../models/block/edified_fence_gate_wall.json | 6 + .../block/edified_fence_gate_wall_open.json | 6 + .../models/block/edified_fence_post.json | 6 + .../models/block/edified_fence_side.json | 6 + .../hexcasting/models/block/edified_log.json | 7 + .../models/block/edified_log_amethyst.json | 7 + .../edified_log_amethyst_horizontal.json | 7 + .../models/block/edified_log_aventurine.json | 7 + .../edified_log_aventurine_horizontal.json | 7 + .../models/block/edified_log_citrine.json | 7 + .../block/edified_log_citrine_horizontal.json | 7 + .../models/block/edified_log_horizontal.json | 7 + .../models/block/edified_log_purple.json | 7 + .../block/edified_log_purple_horizontal.json | 7 + .../models/block/edified_panel.json | 6 + .../models/block/edified_planks.json | 6 + .../models/block/edified_planks_2.json | 6 + .../models/block/edified_planks_3.json | 6 + .../models/block/edified_pressure_plate.json | 6 + .../block/edified_pressure_plate_down.json | 6 + .../hexcasting/models/block/edified_slab.json | 8 + .../models/block/edified_slab_top.json | 8 + .../models/block/edified_stairs.json | 8 + .../models/block/edified_stairs_inner.json | 8 + .../models/block/edified_stairs_outer.json | 8 + .../hexcasting/models/block/edified_tile.json | 6 + .../models/block/edified_trapdoor_bottom.json | 7 + .../models/block/edified_trapdoor_open.json | 7 + .../models/block/edified_trapdoor_top.json | 7 + .../hexcasting/models/block/edified_wood.json | 7 + .../models/block/edified_wood_horizontal.json | 7 + .../models/block/quenched_allay.json | 6 + .../models/block/quenched_allay_0.json | 6 + .../models/block/quenched_allay_1.json | 6 + .../models/block/quenched_allay_2.json | 6 + .../models/block/quenched_allay_3.json | 6 + .../models/block/quenched_allay_bricks.json | 6 + .../block/quenched_allay_bricks_small.json | 6 + .../models/block/quenched_allay_tiles.json | 6 + .../hexcasting/models/block/scroll_paper.json | 6 + .../models/block/scroll_paper_lantern.json | 8 + .../models/block/slate_amethyst_pillar.json | 7 + .../slate_amethyst_pillar_horizontal.json | 7 + .../hexcasting/models/block/slate_block.json | 6 + .../hexcasting/models/block/slate_pillar.json | 7 + .../models/block/slate_pillar_horizontal.json | 7 + .../models/block/stripped_edified_log.json | 7 + .../stripped_edified_log_horizontal.json | 7 + .../models/block/stripped_edified_wood.json | 7 + .../stripped_edified_wood_horizontal.json | 7 + .../assets/hexcasting/models/item/abacus.json | 6 + .../models/item/akashic_bookshelf.json | 3 + .../models/item/akashic_ligature.json | 3 + .../models/item/akashic_record.json | 3 + .../models/item/amethyst_bricks.json | 3 + .../models/item/amethyst_bricks_small.json | 3 + .../hexcasting/models/item/amethyst_dust.json | 6 + .../models/item/amethyst_dust_block.json | 3 + .../models/item/amethyst_edified_leaves.json | 3 + .../models/item/amethyst_pillar.json | 3 + .../models/item/amethyst_sconce.json | 3 + .../models/item/amethyst_tiles.json | 3 + .../models/item/ancient_cypher.json | 120 ++++++++++ .../models/item/ancient_cypher_0_filled.json | 7 + .../models/item/ancient_cypher_1.json | 6 + .../models/item/ancient_cypher_1_filled.json | 7 + .../models/item/ancient_cypher_2.json | 6 + .../models/item/ancient_cypher_2_filled.json | 7 + .../models/item/ancient_cypher_3.json | 6 + .../models/item/ancient_cypher_3_filled.json | 7 + .../models/item/ancient_cypher_4.json | 6 + .../models/item/ancient_cypher_4_filled.json | 7 + .../models/item/ancient_cypher_5.json | 6 + .../models/item/ancient_cypher_5_filled.json | 7 + .../models/item/ancient_cypher_6.json | 6 + .../models/item/ancient_cypher_6_filled.json | 7 + .../models/item/ancient_cypher_7.json | 6 + .../models/item/ancient_cypher_7_filled.json | 7 + .../models/item/ancient_scroll_paper.json | 3 + .../item/ancient_scroll_paper_lantern.json | 3 + .../hexcasting/models/item/artifact.json | 120 ++++++++++ .../models/item/artifact_0_filled.json | 7 + .../hexcasting/models/item/artifact_1.json | 6 + .../models/item/artifact_1_filled.json | 7 + .../hexcasting/models/item/artifact_2.json | 6 + .../models/item/artifact_2_filled.json | 7 + .../hexcasting/models/item/artifact_3.json | 6 + .../models/item/artifact_3_filled.json | 7 + .../hexcasting/models/item/artifact_4.json | 6 + .../models/item/artifact_4_filled.json | 7 + .../hexcasting/models/item/artifact_5.json | 6 + .../models/item/artifact_5_filled.json | 7 + .../hexcasting/models/item/artifact_6.json | 6 + .../models/item/artifact_6_filled.json | 7 + .../hexcasting/models/item/artifact_7.json | 6 + .../models/item/artifact_7_filled.json | 7 + .../item/aventurine_edified_leaves.json | 3 + .../hexcasting/models/item/battery.json | 179 +++++++++++++++ .../models/item/charged_amethyst.json | 6 + .../hexcasting/models/item/cherry_staff.json | 6 + .../models/item/citrine_edified_leaves.json | 3 + .../models/item/conjured_block.json | 6 + .../models/item/conjured_light.json | 6 + .../models/item/creative_unlocker.json | 6 + .../assets/hexcasting/models/item/cypher.json | 120 ++++++++++ .../models/item/cypher_0_filled.json | 7 + .../hexcasting/models/item/cypher_1.json | 6 + .../models/item/cypher_1_filled.json | 7 + .../hexcasting/models/item/cypher_2.json | 6 + .../models/item/cypher_2_filled.json | 7 + .../hexcasting/models/item/cypher_3.json | 6 + .../models/item/cypher_3_filled.json | 7 + .../hexcasting/models/item/cypher_4.json | 6 + .../models/item/cypher_4_filled.json | 7 + .../hexcasting/models/item/cypher_5.json | 6 + .../models/item/cypher_5_filled.json | 7 + .../hexcasting/models/item/cypher_6.json | 6 + .../models/item/cypher_6_filled.json | 7 + .../hexcasting/models/item/cypher_7.json | 6 + .../models/item/cypher_7_filled.json | 7 + .../models/item/default_colorizer.json | 6 + .../models/item/directrix/boolean.json | 3 + .../models/item/directrix/empty.json | 3 + .../models/item/directrix/redstone.json | 3 + .../models/item/dye_colorizer_black.json | 6 + .../models/item/dye_colorizer_blue.json | 6 + .../models/item/dye_colorizer_brown.json | 6 + .../models/item/dye_colorizer_cyan.json | 6 + .../models/item/dye_colorizer_gray.json | 6 + .../models/item/dye_colorizer_green.json | 6 + .../models/item/dye_colorizer_light_blue.json | 6 + .../models/item/dye_colorizer_light_gray.json | 6 + .../models/item/dye_colorizer_lime.json | 6 + .../models/item/dye_colorizer_magenta.json | 6 + .../models/item/dye_colorizer_orange.json | 6 + .../models/item/dye_colorizer_pink.json | 6 + .../models/item/dye_colorizer_purple.json | 6 + .../models/item/dye_colorizer_red.json | 6 + .../models/item/dye_colorizer_white.json | 6 + .../models/item/dye_colorizer_yellow.json | 6 + .../models/item/edified_button.json | 6 + .../hexcasting/models/item/edified_door.json | 6 + .../hexcasting/models/item/edified_fence.json | 3 + .../models/item/edified_fence_gate.json | 3 + .../hexcasting/models/item/edified_log.json | 3 + .../models/item/edified_log_amethyst.json | 3 + .../models/item/edified_log_aventurine.json | 3 + .../models/item/edified_log_citrine.json | 3 + .../models/item/edified_log_purple.json | 3 + .../hexcasting/models/item/edified_panel.json | 3 + .../models/item/edified_planks.json | 3 + .../models/item/edified_pressure_plate.json | 3 + .../hexcasting/models/item/edified_slab.json | 3 + .../models/item/edified_stairs.json | 3 + .../hexcasting/models/item/edified_tile.json | 3 + .../models/item/edified_trapdoor.json | 3 + .../hexcasting/models/item/edified_wood.json | 3 + .../assets/hexcasting/models/item/focus.json | 176 +++++++++++++++ .../models/item/focus_0_filled.json | 7 + .../models/item/focus_0_sealed.json | 7 + .../hexcasting/models/item/focus_1.json | 6 + .../models/item/focus_1_filled.json | 7 + .../models/item/focus_1_sealed.json | 7 + .../hexcasting/models/item/focus_2.json | 6 + .../models/item/focus_2_filled.json | 7 + .../models/item/focus_2_sealed.json | 7 + .../hexcasting/models/item/focus_3.json | 6 + .../models/item/focus_3_filled.json | 7 + .../models/item/focus_3_sealed.json | 7 + .../hexcasting/models/item/focus_4.json | 6 + .../models/item/focus_4_filled.json | 7 + .../models/item/focus_4_sealed.json | 7 + .../hexcasting/models/item/focus_5.json | 6 + .../models/item/focus_5_filled.json | 7 + .../models/item/focus_5_sealed.json | 7 + .../hexcasting/models/item/focus_6.json | 6 + .../models/item/focus_6_filled.json | 7 + .../models/item/focus_6_sealed.json | 7 + .../hexcasting/models/item/focus_7.json | 6 + .../models/item/focus_7_filled.json | 7 + .../models/item/focus_7_sealed.json | 7 + .../hexcasting/models/item/impetus/empty.json | 3 + .../hexcasting/models/item/impetus/look.json | 3 + .../models/item/impetus/redstone.json | 3 + .../models/item/impetus/rightclick.json | 3 + .../models/item/jeweler_hammer.json | 6 + .../assets/hexcasting/models/item/lens.json | 20 ++ .../hexcasting/models/item/lore_fragment.json | 6 + .../hexcasting/models/item/old_staff.json | 6 + .../models/item/patchouli_book.json | 6 + .../hexcasting/models/item/phial_large_0.json | 6 + .../hexcasting/models/item/phial_large_1.json | 6 + .../hexcasting/models/item/phial_large_2.json | 6 + .../hexcasting/models/item/phial_large_3.json | 6 + .../hexcasting/models/item/phial_large_4.json | 6 + .../models/item/phial_larger_0.json | 6 + .../models/item/phial_larger_1.json | 6 + .../models/item/phial_larger_2.json | 6 + .../models/item/phial_larger_3.json | 6 + .../models/item/phial_larger_4.json | 6 + .../models/item/phial_largest_0.json | 6 + .../models/item/phial_largest_1.json | 6 + .../models/item/phial_largest_2.json | 6 + .../models/item/phial_largest_3.json | 6 + .../models/item/phial_largest_4.json | 6 + .../models/item/phial_medium_0.json | 6 + .../models/item/phial_medium_1.json | 6 + .../models/item/phial_medium_2.json | 6 + .../models/item/phial_medium_3.json | 6 + .../models/item/phial_medium_4.json | 6 + .../hexcasting/models/item/phial_small_0.json | 6 + .../hexcasting/models/item/phial_small_1.json | 6 + .../hexcasting/models/item/phial_small_2.json | 6 + .../hexcasting/models/item/phial_small_3.json | 6 + .../hexcasting/models/item/phial_small_4.json | 6 + .../models/item/pride_colorizer_agender.json | 6 + .../models/item/pride_colorizer_aroace.json | 6 + .../item/pride_colorizer_aromantic.json | 6 + .../models/item/pride_colorizer_asexual.json | 6 + .../models/item/pride_colorizer_bisexual.json | 6 + .../models/item/pride_colorizer_demiboy.json | 6 + .../models/item/pride_colorizer_demigirl.json | 6 + .../models/item/pride_colorizer_gay.json | 6 + .../item/pride_colorizer_genderfluid.json | 6 + .../item/pride_colorizer_genderqueer.json | 6 + .../models/item/pride_colorizer_intersex.json | 6 + .../models/item/pride_colorizer_lesbian.json | 6 + .../item/pride_colorizer_nonbinary.json | 6 + .../item/pride_colorizer_pansexual.json | 6 + .../models/item/pride_colorizer_plural.json | 6 + .../item/pride_colorizer_transgender.json | 6 + .../models/item/quenched_allay.json | 28 +++ .../models/item/quenched_allay_bricks.json | 28 +++ .../item/quenched_allay_bricks_small.json | 28 +++ .../models/item/quenched_allay_shard.json | 28 +++ .../models/item/quenched_allay_tiles.json | 28 +++ .../models/item/quenched_shard_0.json | 6 + .../models/item/quenched_shard_1.json | 6 + .../models/item/quenched_shard_2.json | 6 + .../models/item/quenched_shard_3.json | 6 + .../assets/hexcasting/models/item/scroll.json | 16 ++ .../models/item/scroll_ancient_large.json | 6 + .../models/item/scroll_ancient_medium.json | 6 + .../models/item/scroll_ancient_small.json | 6 + .../hexcasting/models/item/scroll_medium.json | 16 ++ .../hexcasting/models/item/scroll_paper.json | 3 + .../models/item/scroll_paper_lantern.json | 3 + .../models/item/scroll_pristine_large.json | 6 + .../models/item/scroll_pristine_medium.json | 6 + .../models/item/scroll_pristine_small.json | 6 + .../hexcasting/models/item/scroll_small.json | 16 ++ .../assets/hexcasting/models/item/slate.json | 16 ++ .../models/item/slate_amethyst_bricks.json | 3 + .../item/slate_amethyst_bricks_small.json | 3 + .../models/item/slate_amethyst_pillar.json | 3 + .../models/item/slate_amethyst_tiles.json | 3 + .../hexcasting/models/item/slate_blank.json | 6 + .../hexcasting/models/item/slate_block.json | 3 + .../hexcasting/models/item/slate_bricks.json | 3 + .../models/item/slate_bricks_small.json | 3 + .../hexcasting/models/item/slate_pillar.json | 3 + .../hexcasting/models/item/slate_tiles.json | 3 + .../hexcasting/models/item/slate_written.json | 6 + .../hexcasting/models/item/spellbook.json | 176 +++++++++++++++ .../models/item/spellbook_0_filled.json | 7 + .../models/item/spellbook_0_sealed.json | 7 + .../hexcasting/models/item/spellbook_1.json | 6 + .../models/item/spellbook_1_filled.json | 7 + .../models/item/spellbook_1_sealed.json | 7 + .../hexcasting/models/item/spellbook_2.json | 6 + .../models/item/spellbook_2_filled.json | 7 + .../models/item/spellbook_2_sealed.json | 7 + .../hexcasting/models/item/spellbook_3.json | 6 + .../models/item/spellbook_3_filled.json | 7 + .../models/item/spellbook_3_sealed.json | 7 + .../hexcasting/models/item/spellbook_4.json | 6 + .../models/item/spellbook_4_filled.json | 7 + .../models/item/spellbook_4_sealed.json | 7 + .../hexcasting/models/item/spellbook_5.json | 6 + .../models/item/spellbook_5_filled.json | 7 + .../models/item/spellbook_5_sealed.json | 7 + .../hexcasting/models/item/spellbook_6.json | 6 + .../models/item/spellbook_6_filled.json | 7 + .../models/item/spellbook_6_sealed.json | 7 + .../hexcasting/models/item/spellbook_7.json | 6 + .../models/item/spellbook_7_filled.json | 7 + .../models/item/spellbook_7_sealed.json | 7 + .../hexcasting/models/item/staff/acacia.json | 6 + .../hexcasting/models/item/staff/bamboo.json | 6 + .../hexcasting/models/item/staff/birch.json | 6 + .../hexcasting/models/item/staff/cherry.json | 6 + .../hexcasting/models/item/staff/crimson.json | 6 + .../models/item/staff/dark_oak.json | 6 + .../hexcasting/models/item/staff/edified.json | 6 + .../hexcasting/models/item/staff/jungle.json | 6 + .../models/item/staff/mangrove.json | 6 + .../models/item/staff/mindsplice.json | 6 + .../hexcasting/models/item/staff/oak.json | 6 + .../models/item/staff/quenched.json | 28 +++ .../models/item/staff/quenched_0.json | 6 + .../models/item/staff/quenched_1.json | 6 + .../models/item/staff/quenched_2.json | 6 + .../models/item/staff/quenched_3.json | 6 + .../hexcasting/models/item/staff/spruce.json | 6 + .../hexcasting/models/item/staff/warped.json | 6 + .../models/item/stripped_edified_log.json | 3 + .../models/item/stripped_edified_wood.json | 3 + .../hexcasting/models/item/sub_sandwich.json | 6 + .../hexcasting/models/item/thought_knot.json | 20 ++ .../models/item/thought_knot_written.json | 7 + .../hexcasting/models/item/trinket.json | 120 ++++++++++ .../models/item/trinket_0_filled.json | 7 + .../hexcasting/models/item/trinket_1.json | 6 + .../models/item/trinket_1_filled.json | 7 + .../hexcasting/models/item/trinket_2.json | 6 + .../models/item/trinket_2_filled.json | 7 + .../hexcasting/models/item/trinket_3.json | 6 + .../models/item/trinket_3_filled.json | 7 + .../hexcasting/models/item/trinket_4.json | 6 + .../models/item/trinket_4_filled.json | 7 + .../hexcasting/models/item/trinket_5.json | 6 + .../models/item/trinket_5_filled.json | 7 + .../hexcasting/models/item/trinket_6.json | 6 + .../models/item/trinket_6_filled.json | 7 + .../hexcasting/models/item/trinket_7.json | 6 + .../models/item/trinket_7_filled.json | 7 + .../models/item/uuid_colorizer.json | 6 + .../hexcasting/models/staff/acacia.json | 16 ++ .../hexcasting/models/staff/bamboo.json | 16 ++ .../assets/hexcasting/models/staff/birch.json | 16 ++ .../hexcasting/models/staff/cherry.json | 16 ++ .../hexcasting/models/staff/crimson.json | 16 ++ .../hexcasting/models/staff/dark_oak.json | 16 ++ .../hexcasting/models/staff/edified.json | 16 ++ .../hexcasting/models/staff/jungle.json | 16 ++ .../hexcasting/models/staff/mangrove.json | 16 ++ .../hexcasting/models/staff/mindsplice.json | 16 ++ .../assets/hexcasting/models/staff/oak.json | 16 ++ .../hexcasting/models/staff/spruce.json | 16 ++ .../hexcasting/models/staff/warped.json | 16 ++ .../data/create/tags/block/brittle.json | 8 + .../data/forge/tags/item/dusts/amethyst.json | 5 + .../resources/data/forge/tags/item/gems.json | 5 + .../advancement/aaa_wasteful_cast.json | 32 +++ .../hexcasting/advancement/aab_big_cast.json | 32 +++ .../advancement/creative_unlocker.json | 36 +++ .../hexcasting/advancement/enlightenment.json | 38 ++++ .../data/hexcasting/advancement/lore.json | 32 +++ .../advancement/lore/cardamom1.json | 25 +++ .../advancement/lore/cardamom2.json | 25 +++ .../advancement/lore/cardamom3.json | 25 +++ .../advancement/lore/cardamom4.json | 25 +++ .../advancement/lore/cardamom5.json | 25 +++ .../advancement/lore/experiment1.json | 25 +++ .../advancement/lore/experiment2.json | 25 +++ .../advancement/lore/inventory.json | 25 +++ .../hexcasting/advancement/opened_eyes.json | 33 +++ .../recipes/brainsweep/akashic_record.json | 35 +++ .../recipes/brainsweep/budding_amethyst.json | 35 +++ .../recipes/brainsweep/directrix_boolean.json | 35 +++ .../brainsweep/directrix_redstone.json | 35 +++ .../recipes/brainsweep/impetus_look.json | 35 +++ .../brainsweep/impetus_rightclick.json | 35 +++ .../brainsweep/impetus_storedplayer.json | 35 +++ .../recipes/brainsweep/quench_allay.json | 35 +++ .../amethyst_dust_packing.json | 32 +++ .../amethyst_dust_unpacking.json | 32 +++ .../building_blocks/amethyst_tiles.json | 32 +++ .../building_blocks/ancient_scroll_paper.json | 32 +++ .../building_blocks/edified_fence.json | 32 +++ .../building_blocks/edified_fence_gate.json | 32 +++ .../building_blocks/edified_panel.json | 32 +++ .../building_blocks/edified_planks.json | 32 +++ .../recipes/building_blocks/edified_slab.json | 32 +++ .../building_blocks/edified_stairs.json | 32 +++ .../recipes/building_blocks/edified_tile.json | 32 +++ .../recipes/building_blocks/edified_wood.json | 32 +++ .../recipes/building_blocks/scroll_paper.json | 32 +++ .../recipes/building_blocks/slate_block.json | 32 +++ .../slate_block_from_slates.json | 32 +++ .../stonecutting/amethyst_tiles.json | 32 +++ .../stripped_edified_wood.json | 32 +++ .../ageing_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/amethyst_sconce.json | 32 +++ .../ancient_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll.json | 32 +++ .../recipes/decorations/scroll_medium.json | 32 +++ .../decorations/scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll_small.json | 32 +++ .../recipes/decorations/slate.json | 32 +++ .../recipes/food/sub_sandwich.json | 32 +++ .../decompose_quenched_shard/charged.json | 32 +++ .../misc/decompose_quenched_shard/dust.json | 32 +++ .../misc/decompose_quenched_shard/shard.json | 32 +++ .../recipes/misc/default_colorizer.json | 32 +++ .../recipes/misc/dye_colorizer_black.json | 32 +++ .../recipes/misc/dye_colorizer_blue.json | 32 +++ .../recipes/misc/dye_colorizer_brown.json | 32 +++ .../recipes/misc/dye_colorizer_cyan.json | 32 +++ .../recipes/misc/dye_colorizer_gray.json | 32 +++ .../recipes/misc/dye_colorizer_green.json | 32 +++ .../misc/dye_colorizer_light_blue.json | 32 +++ .../misc/dye_colorizer_light_gray.json | 32 +++ .../recipes/misc/dye_colorizer_lime.json | 32 +++ .../recipes/misc/dye_colorizer_magenta.json | 32 +++ .../recipes/misc/dye_colorizer_orange.json | 32 +++ .../recipes/misc/dye_colorizer_pink.json | 32 +++ .../recipes/misc/dye_colorizer_purple.json | 32 +++ .../recipes/misc/dye_colorizer_red.json | 32 +++ .../recipes/misc/dye_colorizer_white.json | 32 +++ .../recipes/misc/dye_colorizer_yellow.json | 32 +++ .../recipes/misc/pride_colorizer_agender.json | 32 +++ .../recipes/misc/pride_colorizer_aroace.json | 32 +++ .../misc/pride_colorizer_aromantic.json | 32 +++ .../recipes/misc/pride_colorizer_asexual.json | 32 +++ .../misc/pride_colorizer_bisexual.json | 32 +++ .../recipes/misc/pride_colorizer_demiboy.json | 32 +++ .../misc/pride_colorizer_demigirl.json | 32 +++ .../recipes/misc/pride_colorizer_gay.json | 32 +++ .../misc/pride_colorizer_genderfluid.json | 32 +++ .../misc/pride_colorizer_genderqueer.json | 32 +++ .../misc/pride_colorizer_intersex.json | 32 +++ .../recipes/misc/pride_colorizer_lesbian.json | 32 +++ .../misc/pride_colorizer_nonbinary.json | 32 +++ .../recipes/misc/pride_colorizer_plural.json | 32 +++ .../misc/pride_colorizer_transgender.json | 32 +++ .../recipes/misc/uuid_colorizer.json | 32 +++ .../recipes/redstone/akashic_bookshelf.json | 35 +++ .../recipes/redstone/akashic_ligature.json | 35 +++ .../recipes/redstone/directrix/empty.json | 35 +++ .../recipes/redstone/edified_button.json | 32 +++ .../recipes/redstone/edified_door.json | 32 +++ .../redstone/edified_pressure_plate.json | 32 +++ .../recipes/redstone/edified_trapdoor.json | 32 +++ .../recipes/redstone/impetus/empty.json | 35 +++ .../advancement/recipes/tools/abacus.json | 32 +++ .../advancement/recipes/tools/artifact.json | 32 +++ .../advancement/recipes/tools/cypher.json | 32 +++ .../advancement/recipes/tools/focus.json | 32 +++ .../recipes/tools/focus_rotated.json | 32 +++ .../recipes/tools/jeweler_hammer.json | 32 +++ .../advancement/recipes/tools/lens.json | 32 +++ .../advancement/recipes/tools/spellbook.json | 43 ++++ .../recipes/tools/staff/acacia.json | 32 +++ .../recipes/tools/staff/bamboo.json | 32 +++ .../recipes/tools/staff/birch.json | 32 +++ .../recipes/tools/staff/cherry.json | 32 +++ .../recipes/tools/staff/crimson.json | 32 +++ .../recipes/tools/staff/dark_oak.json | 32 +++ .../recipes/tools/staff/edified.json | 32 +++ .../recipes/tools/staff/jungle.json | 32 +++ .../recipes/tools/staff/mangrove.json | 32 +++ .../recipes/tools/staff/mindsplice.json | 32 +++ .../advancement/recipes/tools/staff/oak.json | 32 +++ .../recipes/tools/staff/quenched.json | 32 +++ .../recipes/tools/staff/spruce.json | 32 +++ .../recipes/tools/staff/warped.json | 32 +++ .../recipes/tools/thought_knot.json | 32 +++ .../advancement/recipes/tools/trinket.json | 32 +++ .../data/hexcasting/advancement/root.json | 34 +++ .../advancement/y_u_no_cast_angy.json | 26 +++ .../data/hexcasting/damage_type/overcast.json | 5 + .../loot_modifiers/amethyst_cluster.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../cypher/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_corridor.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../lore/minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_desert_house.json | 10 + .../chests/village/village_plains_house.json | 10 + .../chests/village/village_savanna_house.json | 10 + .../chests/village/village_snowy_house.json | 10 + .../chests/village/village_taiga_house.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../scroll/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/bastion_other.json | 10 + .../minecraft/chests/bastion_treasure.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/end_city_treasure.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../minecraft/chests/shipwreck_map.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_cartographer.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../loot_table/blocks/akashic_bookshelf.json | 15 ++ .../loot_table/blocks/akashic_ligature.json | 15 ++ .../loot_table/blocks/akashic_record.json | 15 ++ .../loot_table/blocks/amethyst_bricks.json | 15 ++ .../blocks/amethyst_bricks_small.json | 15 ++ .../blocks/amethyst_dust_block.json | 15 ++ .../blocks/amethyst_edified_leaves.json | 41 ++++ .../loot_table/blocks/amethyst_pillar.json | 15 ++ .../loot_table/blocks/amethyst_sconce.json | 15 ++ .../loot_table/blocks/amethyst_tiles.json | 15 ++ .../blocks/ancient_scroll_paper.json | 15 ++ .../blocks/ancient_scroll_paper_lantern.json | 15 ++ .../blocks/aventurine_edified_leaves.json | 41 ++++ .../blocks/citrine_edified_leaves.json | 41 ++++ .../loot_table/blocks/directrix/boolean.json | 15 ++ .../loot_table/blocks/directrix/empty.json | 15 ++ .../loot_table/blocks/directrix/redstone.json | 15 ++ .../loot_table/blocks/edified_button.json | 15 ++ .../loot_table/blocks/edified_door.json | 24 ++ .../loot_table/blocks/edified_fence.json | 15 ++ .../loot_table/blocks/edified_fence_gate.json | 15 ++ .../loot_table/blocks/edified_log.json | 15 ++ .../blocks/edified_log_amethyst.json | 15 ++ .../blocks/edified_log_aventurine.json | 15 ++ .../blocks/edified_log_citrine.json | 15 ++ .../loot_table/blocks/edified_log_purple.json | 15 ++ .../loot_table/blocks/edified_panel.json | 15 ++ .../loot_table/blocks/edified_planks.json | 15 ++ .../blocks/edified_pressure_plate.json | 15 ++ .../loot_table/blocks/edified_slab.json | 34 +++ .../loot_table/blocks/edified_stairs.json | 15 ++ .../loot_table/blocks/edified_tile.json | 15 ++ .../loot_table/blocks/edified_trapdoor.json | 15 ++ .../loot_table/blocks/edified_wood.json | 15 ++ .../loot_table/blocks/impetus/empty.json | 15 ++ .../loot_table/blocks/impetus/look.json | 15 ++ .../loot_table/blocks/impetus/redstone.json | 15 ++ .../loot_table/blocks/impetus/rightclick.json | 15 ++ .../loot_table/blocks/quenched_allay.json | 69 ++++++ .../blocks/quenched_allay_bricks.json | 15 ++ .../blocks/quenched_allay_bricks_small.json | 15 ++ .../blocks/quenched_allay_tiles.json | 15 ++ .../loot_table/blocks/scroll_paper.json | 15 ++ .../blocks/scroll_paper_lantern.json | 15 ++ .../hexcasting/loot_table/blocks/slate.json | 24 ++ .../blocks/slate_amethyst_bricks.json | 15 ++ .../blocks/slate_amethyst_bricks_small.json | 15 ++ .../blocks/slate_amethyst_pillar.json | 15 ++ .../blocks/slate_amethyst_tiles.json | 15 ++ .../loot_table/blocks/slate_block.json | 15 ++ .../loot_table/blocks/slate_bricks.json | 15 ++ .../loot_table/blocks/slate_bricks_small.json | 15 ++ .../loot_table/blocks/slate_pillar.json | 15 ++ .../loot_table/blocks/slate_tiles.json | 15 ++ .../blocks/stripped_edified_log.json | 15 ++ .../blocks/stripped_edified_wood.json | 15 ++ .../loot_table/inject/amethyst_cluster.json | 211 ++++++++++++++++++ .../data/hexcasting/recipe/abacus.json | 24 ++ .../recipe/ageing_scroll_paper_lantern.json | 37 +++ .../hexcasting/recipe/akashic_bookshelf.json | 24 ++ .../hexcasting/recipe/akashic_ligature.json | 30 +++ .../recipe/amethyst_dust_packing.json | 17 ++ .../recipe/amethyst_dust_unpacking.json | 13 ++ .../hexcasting/recipe/amethyst_sconce.json | 20 ++ .../hexcasting/recipe/amethyst_tiles.json | 24 ++ .../recipe/ancient_scroll_paper.json | 37 +++ .../recipe/ancient_scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/artifact.json | 24 ++ .../recipe/brainsweep/akashic_record.json | 16 ++ .../recipe/brainsweep/budding_amethyst.json | 15 ++ .../recipe/brainsweep/directrix_boolean.json | 21 ++ .../recipe/brainsweep/directrix_redstone.json | 21 ++ .../recipe/brainsweep/impetus_look.json | 20 ++ .../recipe/brainsweep/impetus_rightclick.json | 20 ++ .../brainsweep/impetus_storedplayer.json | 21 ++ .../recipe/brainsweep/quench_allay.json | 15 ++ .../data/hexcasting/recipe/cypher.json | 21 ++ .../decompose_quenched_shard/charged.json | 16 ++ .../recipe/decompose_quenched_shard/dust.json | 16 ++ .../decompose_quenched_shard/shard.json | 16 ++ .../hexcasting/recipe/default_colorizer.json | 24 ++ .../hexcasting/recipe/directrix/empty.json | 27 +++ .../recipe/dye_colorizer_black.json | 21 ++ .../hexcasting/recipe/dye_colorizer_blue.json | 21 ++ .../recipe/dye_colorizer_brown.json | 21 ++ .../hexcasting/recipe/dye_colorizer_cyan.json | 21 ++ .../hexcasting/recipe/dye_colorizer_gray.json | 21 ++ .../recipe/dye_colorizer_green.json | 21 ++ .../recipe/dye_colorizer_light_blue.json | 21 ++ .../recipe/dye_colorizer_light_gray.json | 21 ++ .../hexcasting/recipe/dye_colorizer_lime.json | 21 ++ .../recipe/dye_colorizer_magenta.json | 21 ++ .../recipe/dye_colorizer_orange.json | 21 ++ .../hexcasting/recipe/dye_colorizer_pink.json | 21 ++ .../recipe/dye_colorizer_purple.json | 21 ++ .../hexcasting/recipe/dye_colorizer_red.json | 21 ++ .../recipe/dye_colorizer_white.json | 21 ++ .../recipe/dye_colorizer_yellow.json | 21 ++ .../hexcasting/recipe/dynamicseal_focus.json | 4 + .../recipe/dynamicseal_spellbook.json | 4 + .../hexcasting/recipe/edified_button.json | 13 ++ .../data/hexcasting/recipe/edified_door.json | 18 ++ .../data/hexcasting/recipe/edified_fence.json | 20 ++ .../hexcasting/recipe/edified_fence_gate.json | 20 ++ .../data/hexcasting/recipe/edified_panel.json | 21 ++ .../hexcasting/recipe/edified_planks.json | 13 ++ .../recipe/edified_pressure_plate.json | 16 ++ .../data/hexcasting/recipe/edified_slab.json | 16 ++ .../hexcasting/recipe/edified_stairs.json | 18 ++ .../data/hexcasting/recipe/edified_tile.json | 18 ++ .../hexcasting/recipe/edified_trapdoor.json | 17 ++ .../data/hexcasting/recipe/edified_wood.json | 17 ++ .../data/hexcasting/recipe/focus.json | 27 +++ .../data/hexcasting/recipe/focus_rotated.json | 27 +++ .../data/hexcasting/recipe/impetus/empty.json | 27 +++ .../hexcasting/recipe/jeweler_hammer.json | 32 +++ .../data/hexcasting/recipe/lens.json | 21 ++ .../recipe/pride_colorizer_agender.json | 21 ++ .../recipe/pride_colorizer_aroace.json | 21 ++ .../recipe/pride_colorizer_aromantic.json | 21 ++ .../recipe/pride_colorizer_asexual.json | 21 ++ .../recipe/pride_colorizer_bisexual.json | 21 ++ .../recipe/pride_colorizer_demiboy.json | 21 ++ .../recipe/pride_colorizer_demigirl.json | 21 ++ .../recipe/pride_colorizer_gay.json | 21 ++ .../recipe/pride_colorizer_genderfluid.json | 21 ++ .../recipe/pride_colorizer_genderqueer.json | 21 ++ .../recipe/pride_colorizer_intersex.json | 21 ++ .../recipe/pride_colorizer_lesbian.json | 21 ++ .../recipe/pride_colorizer_nonbinary.json | 21 ++ .../recipe/pride_colorizer_plural.json | 21 ++ .../recipe/pride_colorizer_transgender.json | 21 ++ .../data/hexcasting/recipe/scroll.json | 21 ++ .../data/hexcasting/recipe/scroll_medium.json | 21 ++ .../data/hexcasting/recipe/scroll_paper.json | 24 ++ .../recipe/scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/scroll_small.json | 20 ++ .../data/hexcasting/recipe/slate.json | 20 ++ .../data/hexcasting/recipe/slate_block.json | 24 ++ .../recipe/slate_block_from_slates.json | 17 ++ .../data/hexcasting/recipe/spellbook.json | 27 +++ .../data/hexcasting/recipe/staff/acacia.json | 24 ++ .../data/hexcasting/recipe/staff/bamboo.json | 24 ++ .../data/hexcasting/recipe/staff/birch.json | 24 ++ .../data/hexcasting/recipe/staff/cherry.json | 24 ++ .../data/hexcasting/recipe/staff/crimson.json | 24 ++ .../hexcasting/recipe/staff/dark_oak.json | 24 ++ .../data/hexcasting/recipe/staff/edified.json | 24 ++ .../data/hexcasting/recipe/staff/jungle.json | 24 ++ .../hexcasting/recipe/staff/mangrove.json | 24 ++ .../hexcasting/recipe/staff/mindsplice.json | 24 ++ .../data/hexcasting/recipe/staff/oak.json | 24 ++ .../hexcasting/recipe/staff/quenched.json | 24 ++ .../data/hexcasting/recipe/staff/spruce.json | 24 ++ .../data/hexcasting/recipe/staff/warped.json | 24 ++ .../recipe/stonecutting/amethyst_tiles.json | 10 + .../recipe/stripped_edified_wood.json | 17 ++ .../data/hexcasting/recipe/sub_sandwich.json | 27 +++ .../data/hexcasting/recipe/thought_knot.json | 16 ++ .../data/hexcasting/recipe/trinket.json | 21 ++ .../hexcasting/recipe/uuid_colorizer.json | 24 ++ .../block/brainswept_circle_components.json | 6 + .../tags/block/cheap_to_break_block.json | 6 + .../hexcasting/tags/block/directrices.json | 6 + .../hexcasting/tags/block/edified_logs.json | 12 + .../hexcasting/tags/block/edified_planks.json | 7 + .../tags/block/hex_unbreakable.json | 5 + .../data/hexcasting/tags/block/impeti.json | 7 + .../hexcasting/tags/block/water_plants.json | 8 + .../action/can_start_enlighten.json | 18 ++ .../hexcasting/action/per_world_pattern.json | 18 ++ .../action/requires_enlightenment.json | 18 ++ .../item/brainswept_circle_components.json | 6 + .../hexcasting/tags/item/directrices.json | 6 + .../hexcasting/tags/item/edified_logs.json | 12 + .../hexcasting/tags/item/edified_planks.json | 7 + .../tags/item/grants_root_advancement.json | 8 + .../data/hexcasting/tags/item/impeti.json | 7 + .../data/hexcasting/tags/item/phial_base.json | 5 + .../hexcasting/tags/item/seal_materials.json | 5 + .../data/hexcasting/tags/item/staves.json | 18 ++ .../data/minecraft/tags/block/buttons.json | 5 + .../tags/block/crystal_sound_blocks.json | 8 + .../data/minecraft/tags/block/doors.json | 5 + .../minecraft/tags/block/fence_gates.json | 5 + .../data/minecraft/tags/block/fences.json | 5 + .../data/minecraft/tags/block/leaves.json | 7 + .../data/minecraft/tags/block/logs.json | 12 + .../minecraft/tags/block/logs_that_burn.json | 12 + .../minecraft/tags/block/mineable/axe.json | 25 +++ .../minecraft/tags/block/mineable/hoe.json | 7 + .../tags/block/mineable/pickaxe.json | 30 +++ .../minecraft/tags/block/mineable/shovel.json | 5 + .../data/minecraft/tags/block/planks.json | 7 + .../minecraft/tags/block/pressure_plates.json | 5 + .../data/minecraft/tags/block/slabs.json | 5 + .../data/minecraft/tags/block/stairs.json | 5 + .../data/minecraft/tags/block/trapdoors.json | 5 + .../tags/block/unstable_bottom_center.json | 5 + .../minecraft/tags/block/wooden_buttons.json | 5 + .../minecraft/tags/block/wooden_doors.json | 5 + .../minecraft/tags/block/wooden_fences.json | 6 + .../tags/block/wooden_pressure_plates.json | 5 + .../minecraft/tags/block/wooden_slabs.json | 5 + .../minecraft/tags/block/wooden_stairs.json | 5 + .../tags/block/wooden_trapdoors.json | 5 + .../tags/damage_type/bypasses_armor.json | 5 + .../tags/damage_type/bypasses_effects.json | 5 + .../tags/damage_type/bypasses_shield.json | 5 + .../data/minecraft/tags/item/buttons.json | 5 + .../data/minecraft/tags/item/doors.json | 5 + .../data/minecraft/tags/item/leaves.json | 7 + .../data/minecraft/tags/item/logs.json | 12 + .../minecraft/tags/item/logs_that_burn.json | 12 + .../data/minecraft/tags/item/planks.json | 7 + .../data/minecraft/tags/item/slabs.json | 5 + .../data/minecraft/tags/item/trapdoors.json | 5 + .../minecraft/tags/item/wooden_buttons.json | 5 + .../minecraft/tags/item/wooden_doors.json | 5 + .../tags/item/wooden_pressure_plates.json | 5 + .../minecraft/tags/item/wooden_slabs.json | 5 + .../minecraft/tags/item/wooden_trapdoors.json | 5 + .../loot_modifiers/global_loot_modifiers.json | 37 +++ .../forge/datagen/ForgeHexDataGenerators.java | 8 +- build.gradle | 3 +- 1282 files changed, 22458 insertions(+), 22 deletions(-) create mode 100644 Fabric/libs/jankson-1.2.3.jar create mode 100644 Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json create mode 100644 Fabric/src/generated/resources/data/c/tags/item/gems.json create mode 100644 Fabric/src/generated/resources/data/create/tags/block/brittle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/lens.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fences.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/planks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/planks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/create/tags/block/brittle.json create mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json create mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/gems.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/root.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java index 071842dd0d..7def1328b6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java @@ -127,12 +127,16 @@ protected void makeLootTables(Map blockTables, .when(noSilkTouchCond).when(goodAtAmethystingCond.invert()) .when(LootItemRandomChanceCondition.randomChance(0.125f)); + HexAPI.LOGGER.info("Doing amethyst cluster injection shit"); + lootTables.put(HexLootHandler.TABLE_INJECT_AMETHYST_CLUSTER, LootTable.lootTable() .withPool(dustPoolWhenGood) .withPool(dustPoolWhenBad) .withPool(isThatAnMFingBrandonSandersonReference) .withPool(isThatAnMFingBadBrandonSandersonReference)); + HexAPI.LOGGER.info("Quenched bugged...?"); + // it looks like loot groups are bugged? // so instead we add some and then *increment* the amount, gated behind the cond var quenchedPool = LootPool.lootPool().add(AlternativesEntry.alternatives( diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java index ae8fa463d5..9d8372aeac 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java @@ -36,7 +36,7 @@ protected void addTags(HolderLookup.Provider provider) { .addTag(HexTags.Blocks.DIRECTRICES); tag(HexTags.Blocks.HEX_UNBREAKABLE) - .addTag(BlockTags.NEEDS_DIAMOND_TOOL); + .addOptionalTag(BlockTags.NEEDS_DIAMOND_TOOL.location()); add(tag(BlockTags.MINEABLE_WITH_PICKAXE), HexBlocks.SLATE_BLOCK, HexBlocks.SLATE_TILES, HexBlocks.SLATE_BRICKS, diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 2aee8820a5..f69770face 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -146,7 +146,7 @@ dependencies { modLocalRuntime "dev.architectury:architectury-fabric:$architecturyVersion" modLocalRuntime "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" modLocalRuntime "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" - localRuntime "blue.endless:jankson:1.2.2" + localRuntime "hexcasting:jankson:1.2.3" // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" @@ -200,4 +200,8 @@ remapJar { dependsOn shadowJar } +tasks.named('processResources') { + duplicatesStrategy = DuplicatesStrategy.WARN +} + jar.finalizedBy(remapJar) \ No newline at end of file diff --git a/Fabric/libs/jankson-1.2.3.jar b/Fabric/libs/jankson-1.2.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..d5479eda0d21566b0e633bc196dfac72058cb77a GIT binary patch literal 75817 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
|hv6IgX9o6~UnRz=k+AyxPB0f>Xdpvma< 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 literal 0 HcmV?d00001 diff --git a/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json b/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json new file mode 100644 index 0000000000..d936f71efc --- /dev/null +++ b/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/c/tags/item/gems.json b/Fabric/src/generated/resources/data/c/tags/item/gems.json new file mode 100644 index 0000000000..6c55bdef92 --- /dev/null +++ b/Fabric/src/generated/resources/data/c/tags/item/gems.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/tags/block/brittle.json b/Fabric/src/generated/resources/data/create/tags/block/brittle.json new file mode 100644 index 0000000000..fb66be6093 --- /dev/null +++ b/Fabric/src/generated/resources/data/create/tags/block/brittle.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#hexcasting:slate", + "required": false + } + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json new file mode 100644 index 0000000000..d36fd4dc3b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_record" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_record" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..18f9ea380f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:budding_amethyst" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:budding_amethyst" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..31d9085f82 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_storedplayer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_storedplayer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json new file mode 100644 index 0000000000..96746726ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_packing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_packing" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..ff10efd290 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_unpacking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_unpacking" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json new file mode 100644 index 0000000000..a5ab663568 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..ab1194da4a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json new file mode 100644 index 0000000000..31556a4ca8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json new file mode 100644 index 0000000000..1d09e6fdf8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence_gate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence_gate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json new file mode 100644 index 0000000000..ab66016e10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_panel" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json new file mode 100644 index 0000000000..f031431d00 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_logs" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_planks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json new file mode 100644 index 0000000000..317bd1fd11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_slab" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json new file mode 100644 index 0000000000..069989ca28 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_stairs" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json new file mode 100644 index 0000000000..5179827061 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_tile" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_tile" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json new file mode 100644 index 0000000000..f0aaf4b1fd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_wood" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json new file mode 100644 index 0000000000..d676daa7f7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json new file mode 100644 index 0000000000..770d62ab2b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json new file mode 100644 index 0000000000..b2f96c2797 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block_from_slates" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block_from_slates" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..3c2f410ce6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..4d048fc250 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:stripped_edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stripped_edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stripped_edified_wood" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..6ae4bdbbb6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper_lantern" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ageing_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ageing_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json new file mode 100644 index 0000000000..91debb7ca5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_sconce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_sconce" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f36c1abfc2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:ancient_scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json new file mode 100644 index 0000000000..1bff0c5ff6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json new file mode 100644 index 0000000000..2dc4651527 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_medium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_medium" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json new file mode 100644 index 0000000000..63884d313e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json new file mode 100644 index 0000000000..2e68c56849 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json new file mode 100644 index 0000000000..551899a3a3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json new file mode 100644 index 0000000000..bb64c267e5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:sub_sandwich" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:sub_sandwich" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..b032476ae7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/charged" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/charged" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..299d8a4550 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/dust" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/dust" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..d9f9dfbb25 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/shard" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json new file mode 100644 index 0000000000..e04ea0f7b0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:default_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:default_colorizer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json new file mode 100644 index 0000000000..486da412cd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_black" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_black" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json new file mode 100644 index 0000000000..c23b00add5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_blue" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json new file mode 100644 index 0000000000..daf49d8674 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_brown" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_brown" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json new file mode 100644 index 0000000000..bc159a4f91 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_cyan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_cyan" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json new file mode 100644 index 0000000000..959c3b871a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_gray" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json new file mode 100644 index 0000000000..ae496bdb93 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_green" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_green" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..9e660ad5de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_blue" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..b2b51d665b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_gray" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json new file mode 100644 index 0000000000..b21321754b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_lime" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_lime" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json new file mode 100644 index 0000000000..38097fe636 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_magenta" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_magenta" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json new file mode 100644 index 0000000000..a5e2054cd0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_orange" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_orange" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json new file mode 100644 index 0000000000..868366c0a4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_pink" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_pink" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json new file mode 100644 index 0000000000..b9d4282404 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_purple" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_purple" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json new file mode 100644 index 0000000000..515062d384 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_red" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_red" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json new file mode 100644 index 0000000000..3fbaf1ba20 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_white" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_white" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json new file mode 100644 index 0000000000..e707bc9937 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_yellow" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_yellow" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json new file mode 100644 index 0000000000..e07c954cd3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_agender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_agender" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json new file mode 100644 index 0000000000..8413c66774 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aroace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aroace" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..37604e5939 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aromantic" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aromantic" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json new file mode 100644 index 0000000000..74df9afba7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_asexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_asexual" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..a3e18ad420 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_bisexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_bisexual" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..e131fc73f1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demiboy" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demiboy" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..a164b59ce6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demigirl" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demigirl" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json new file mode 100644 index 0000000000..59c4f8fdeb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_gay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_gay" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..5c3233fa98 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderfluid" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderfluid" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..fd6f1355ef --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderqueer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderqueer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json new file mode 100644 index 0000000000..091329fe3f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_intersex" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_intersex" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..3d4dec1d10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_lesbian" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_lesbian" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..83c4964af9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_nonbinary" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_nonbinary" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json new file mode 100644 index 0000000000..89512b05e1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_plural" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_plural" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json new file mode 100644 index 0000000000..70dced6396 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_transgender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_transgender" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json new file mode 100644 index 0000000000..fbcdbfebf4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:uuid_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:uuid_colorizer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json new file mode 100644 index 0000000000..44a4110650 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json new file mode 100644 index 0000000000..e00a4fdf00 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix/empty" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json new file mode 100644 index 0000000000..b6cd73817c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_button" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_button" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json new file mode 100644 index 0000000000..72dce77364 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_door" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_door" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json new file mode 100644 index 0000000000..f207372eeb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_pressure_plate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_pressure_plate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json new file mode 100644 index 0000000000..be0fadb15b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_trapdoor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_trapdoor" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json new file mode 100644 index 0000000000..0b4aa3256c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus/empty" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json new file mode 100644 index 0000000000..b1cb841b3e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:abacus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:abacus" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json new file mode 100644 index 0000000000..221cf418c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:artifact" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:artifact" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json new file mode 100644 index 0000000000..5489ea0467 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:cypher" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:cypher" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json new file mode 100644 index 0000000000..4e19de9e5e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json new file mode 100644 index 0000000000..f67d8502aa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus_rotated" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus_rotated" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json new file mode 100644 index 0000000000..6a24d2b333 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:jeweler_hammer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:jeweler_hammer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json new file mode 100644 index 0000000000..3411cb2187 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:lens" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json new file mode 100644 index 0000000000..ef5a492652 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -0,0 +1,43 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_chorus": { + "conditions": { + "items": [ + { + "items": "minecraft:chorus_fruit" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_focus": { + "conditions": { + "items": [ + { + "items": "hexcasting:focus" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:spellbook" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_focus", + "has_chorus" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:spellbook" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json new file mode 100644 index 0000000000..c1e018b4ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/acacia" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/acacia" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json new file mode 100644 index 0000000000..19094ad2fe --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/bamboo" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/bamboo" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json new file mode 100644 index 0000000000..ca6c180cfa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/birch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/birch" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json new file mode 100644 index 0000000000..38107a9b52 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/cherry" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/cherry" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json new file mode 100644 index 0000000000..da68b592c5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/crimson" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/crimson" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json new file mode 100644 index 0000000000..da9937e87d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/dark_oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/dark_oak" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json new file mode 100644 index 0000000000..99d19ed3bf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/edified" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/edified" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json new file mode 100644 index 0000000000..80fe7c43f6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/jungle" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/jungle" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json new file mode 100644 index 0000000000..0064814593 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mangrove" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mangrove" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json new file mode 100644 index 0000000000..adb60836c1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mindsplice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mindsplice" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json new file mode 100644 index 0000000000..d11084b78d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/oak" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json new file mode 100644 index 0000000000..1ce63b78e3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/quenched" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/quenched" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json new file mode 100644 index 0000000000..cbad54cf88 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/spruce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/spruce" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json new file mode 100644 index 0000000000..ffff5199c6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/warped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/warped" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json new file mode 100644 index 0000000000..f50c1673fa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:thought_knot" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:thought_knot" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json new file mode 100644 index 0000000000..17c0d69b1f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:trinket" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:trinket" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json new file mode 100644 index 0000000000..78a36f62ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_bookshelf" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_bookshelf" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json new file mode 100644 index 0000000000..02be275bc1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_ligature" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_ligature" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json new file mode 100644 index 0000000000..5c93f81681 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_record" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_record" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json new file mode 100644 index 0000000000..4c60a77364 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json new file mode 100644 index 0000000000..3d39f82987 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json new file mode 100644 index 0000000000..7c054a0aab --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_dust_block" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json new file mode 100644 index 0000000000..1d66e9bbad --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json new file mode 100644 index 0000000000..2eeb112461 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json new file mode 100644 index 0000000000..e2c38fe09e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_sconce" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_sconce" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json new file mode 100644 index 0000000000..13010296ca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..2bb2887920 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f2ea006a03 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json new file mode 100644 index 0000000000..19a6706346 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:aventurine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json new file mode 100644 index 0000000000..8318d3456c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:citrine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json new file mode 100644 index 0000000000..7510be752b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/boolean" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/boolean" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json new file mode 100644 index 0000000000..056282de33 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/empty" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json new file mode 100644 index 0000000000..b130eb19de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/redstone" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json new file mode 100644 index 0000000000..a24172124e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_button" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_button" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json new file mode 100644 index 0000000000..942a65484f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "block": "hexcasting:edified_door", + "condition": "minecraft:block_state_property", + "properties": { + "half": "lower" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_door" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_door" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json new file mode 100644 index 0000000000..f45eea22be --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json new file mode 100644 index 0000000000..01cbf2a5e1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence_gate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence_gate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json new file mode 100644 index 0000000000..396a3fcb45 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json new file mode 100644 index 0000000000..d6c0759bfa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_amethyst" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_amethyst" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json new file mode 100644 index 0000000000..31892f2177 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_aventurine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_aventurine" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json new file mode 100644 index 0000000000..21ac1cd0fb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_citrine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_citrine" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json new file mode 100644 index 0000000000..f9c2c33343 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_purple" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_purple" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json new file mode 100644 index 0000000000..83cb1f1b59 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_panel" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_panel" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json new file mode 100644 index 0000000000..5f1b5f7280 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_planks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_planks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json new file mode 100644 index 0000000000..d733b30a49 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_pressure_plate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_pressure_plate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json new file mode 100644 index 0000000000..0bdc00f6b3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json @@ -0,0 +1,34 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_slab" + } + ], + "functions": [ + { + "add": false, + "conditions": [ + { + "block": "hexcasting:edified_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ], + "count": 2.0, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_slab" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json new file mode 100644 index 0000000000..7cb6566434 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_stairs" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_stairs" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json new file mode 100644 index 0000000000..dbc6bd1426 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_tile" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_tile" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json new file mode 100644 index 0000000000..f76ea0437f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_trapdoor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_trapdoor" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json new file mode 100644 index 0000000000..2e1faee977 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_wood" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json new file mode 100644 index 0000000000..67fe1185ac --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/empty" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json new file mode 100644 index 0000000000..87f6f0ef09 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/look" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/look" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json new file mode 100644 index 0000000000..1635ee4207 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/redstone" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json new file mode 100644 index 0000000000..37f1e9df10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/rightclick" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/rightclick" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json new file mode 100644 index 0000000000..92c0175113 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -0,0 +1,69 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ], + "name": "minecraft:air" + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 2.0 + }, + "function": "minecraft:set_count" + }, + { + "add": true, + "conditions": [ + { + "chances": [ + 0.25, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "name": "hexcasting:quenched_allay_shard" + } + ] + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..eb1a87b224 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..879089b6d4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..0c81157382 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json new file mode 100644 index 0000000000..8c3d628108 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json new file mode 100644 index 0000000000..ccea471c66 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json new file mode 100644 index 0000000000..eeb8f5c955 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" + ], + "source": "block_entity" + } + ], + "name": "hexcasting:slate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6d9ea8d1a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..6f7cfb5825 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..96dd26f7fb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e91ebad3ce --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json new file mode 100644 index 0000000000..d136fe7460 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_block" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json new file mode 100644 index 0000000000..d42593f8d5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json new file mode 100644 index 0000000000..f77a608dec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json new file mode 100644 index 0000000000..060b60ebf9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json new file mode 100644 index 0000000000..81cda1a13a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json new file mode 100644 index 0000000000..7dab40f3a1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_log" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..60b009f032 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_wood" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json new file mode 100644 index 0000000000..e87bc89af2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -0,0 +1,211 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + }, + { + "chances": [ + 0.25, + 0.35, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + }, + { + "chance": 0.125, + "condition": "minecraft:random_chance" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:inject/amethyst_cluster" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json new file mode 100644 index 0000000000..76d393b033 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "minecraft:planks" + } + }, + "pattern": [ + "WAW", + "SAS", + "WAW" + ], + "result": { + "count": 1, + "id": "hexcasting:abacus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..fca2df35ca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -0,0 +1,45 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + [ + { + "item": "minecraft:brown_dye" + }, + { + "tag": "c:brown_dye" + }, + { + "tag": "c:brown_dyes" + } + ], + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json new file mode 100644 index 0000000000..055ac48308 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "C": { + "item": "minecraft:book" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "result": { + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json new file mode 100644 index 0000000000..bbcc3f83e7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "1": { + "item": "hexcasting:amethyst_dust" + }, + "2": { + "item": "minecraft:amethyst_shard" + }, + "3": { + "item": "hexcasting:charged_amethyst" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "123", + "LPL" + ], + "result": { + "count": 4, + "id": "hexcasting:akashic_ligature" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json new file mode 100644 index 0000000000..1da337229f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "X": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "XX", + "XX" + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..db42cb3711 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust_block" + } + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json new file mode 100644 index 0000000000..6c20a9e580 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": [ + { + "item": "minecraft:copper_ingot" + }, + { + "tag": "c:copper_ingots" + } + ], + "T": { + "item": "hexcasting:charged_amethyst" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_sconce" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json new file mode 100644 index 0000000000..300139c437 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:amethyst_block" + }, + "D": { + "item": "minecraft:amethyst_block" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json new file mode 100644 index 0000000000..cef3280ce8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -0,0 +1,45 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + [ + { + "item": "minecraft:brown_dye" + }, + { + "tag": "c:brown_dye" + }, + { + "tag": "c:brown_dyes" + } + ], + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..d99d9ba91b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:ancient_scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json b/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json new file mode 100644 index 0000000000..9db7d8ad92 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "D": { + "tag": "minecraft:creeper_drop_music_discs" + }, + "F": [ + { + "item": "minecraft:gold_ingot" + }, + { + "tag": "c:gold_ingots" + } + ] + }, + "pattern": [ + " F ", + "FAF", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:artifact" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..0532b2e5ed --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 3 + }, + "result": { + "Name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..5e97ada05f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:shepherd" + }, + "result": { + "Name": "hexcasting:directrix/boolean", + "Properties": { + "energized": "false", + "facing": "north", + "state": "neither" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..afb314d043 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:mason" + }, + "result": { + "Name": "hexcasting:directrix/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "false" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json new file mode 100644 index 0000000000..7d77364f78 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:fletcher" + }, + "result": { + "Name": "hexcasting:impetus/look", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..02fbae2538 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:toolsmith" + }, + "result": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..f79dca1d11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:cleric" + }, + "result": { + "Name": "hexcasting:impetus/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "true" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json new file mode 100644 index 0000000000..076b4e0745 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 100000, + "entityIn": { + "type": "hexcasting:entity_type", + "entityType": "minecraft:allay" + }, + "result": { + "Name": "hexcasting:quenched_allay" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json b/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json new file mode 100644 index 0000000000..f45f438c5b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": [ + { + "item": "minecraft:copper_ingot" + }, + { + "tag": "c:copper_ingots" + } + ], + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:cypher" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..4d9e9902e8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:charged_amethyst" + } + ], + "result": { + "count": 4, + "id": "hexcasting:charged_amethyst" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..5023760773 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:amethyst_dust" + } + ], + "result": { + "count": 31, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..e441d9bf5f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "minecraft:amethyst_shard" + } + ], + "result": { + "count": 7, + "id": "minecraft:amethyst_shard" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json new file mode 100644 index 0000000000..b61e7ef20a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:default_colorizer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json new file mode 100644 index 0000000000..986fa97d99 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "C": { + "item": "minecraft:comparator" + }, + "O": { + "item": "minecraft:observer" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "CSS", + "OAO", + "SSC" + ], + "result": { + "count": 1, + "id": "hexcasting:directrix/empty" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json new file mode 100644 index 0000000000..43dcd86862 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:black_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json new file mode 100644 index 0000000000..b9cd3b99c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json new file mode 100644 index 0000000000..f02b87049c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:brown_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json new file mode 100644 index 0000000000..93380132c6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:cyan_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json new file mode 100644 index 0000000000..c803427d5a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json new file mode 100644 index 0000000000..e592b36cca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:green_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..d8eb9b5986 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..e6efc2af9a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json new file mode 100644 index 0000000000..645db81176 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:lime_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json new file mode 100644 index 0000000000..9476c0a098 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:magenta_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json new file mode 100644 index 0000000000..f6f815b95f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:orange_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json new file mode 100644 index 0000000000..065db19c23 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:pink_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json new file mode 100644 index 0000000000..85dab6119e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:purple_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json new file mode 100644 index 0000000000..8acba0fc1a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:red_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json new file mode 100644 index 0000000000..d76ee9ba69 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:white_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json new file mode 100644 index 0000000000..35ffbdd8df --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:yellow_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json new file mode 100644 index 0000000000..28edc09f6d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_focus", + "category": "misc" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json new file mode 100644 index 0000000000..5bf703566d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_spellbook", + "category": "misc" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json new file mode 100644 index 0000000000..10ad25b4aa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "redstone", + "ingredients": [ + { + "tag": "hexcasting:edified_planks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:edified_button" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json new file mode 100644 index 0000000000..6ff2941615 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW", + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_door" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json new file mode 100644 index 0000000000..f1a7c7ec45 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WSW", + "WSW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_fence" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json new file mode 100644 index 0000000000..a38d45ca38 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "SWS", + "SWS" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_fence_gate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json new file mode 100644 index 0000000000..0baf420f31 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "tag": "hexcasting:edified_planks" + }, + "D": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:edified_panel" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json new file mode 100644 index 0000000000..7ea641db71 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "hexcasting:edified_logs" + } + ], + "result": { + "count": 4, + "id": "hexcasting:edified_planks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json new file mode 100644 index 0000000000..fb80df82d1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json new file mode 100644 index 0000000000..efda8df52a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_slab" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json new file mode 100644 index 0000000000..ca2e03f9c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "W ", + "WW ", + "WWW" + ], + "result": { + "count": 4, + "id": "hexcasting:edified_stairs" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json new file mode 100644 index 0000000000..bfca8c3437 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW ", + "W W", + " WW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_tile" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json new file mode 100644 index 0000000000..89928fcc73 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW", + "WWW" + ], + "result": { + "count": 2, + "id": "hexcasting:edified_trapdoor" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json new file mode 100644 index 0000000000..4e95e0bdc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_wood" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json new file mode 100644 index 0000000000..011cde4d82 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": [ + { + "item": "minecraft:glowstone_dust" + }, + { + "tag": "c:glowstone_dusts" + } + ], + "L": { + "item": "minecraft:leather" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GLG", + "PAP", + "GLG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json new file mode 100644 index 0000000000..b91b4363b9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": [ + { + "item": "minecraft:glowstone_dust" + }, + { + "tag": "c:glowstone_dusts" + } + ], + "L": { + "item": "minecraft:leather" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GPG", + "LAL", + "GPG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json new file mode 100644 index 0000000000..b5d3b9fd5c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:iron_bars" + }, + "P": { + "item": "minecraft:purpur_block" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "PSS", + "BAB", + "SSP" + ], + "result": { + "count": 1, + "id": "hexcasting:impetus/empty" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json new file mode 100644 index 0000000000..e1ec585bb6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -0,0 +1,42 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "I": [ + { + "item": "minecraft:iron_ingot" + }, + { + "tag": "c:iron_ingots" + } + ], + "N": [ + { + "item": "minecraft:iron_nugget" + }, + { + "tag": "c:iron_nuggets" + } + ], + "S": [ + { + "item": "minecraft:stick" + }, + { + "tag": "c:wood_sticks" + } + ] + }, + "pattern": [ + "IAN", + " S ", + " S " + ], + "result": { + "count": 1, + "id": "hexcasting:jeweler_hammer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json b/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json new file mode 100644 index 0000000000..d7e33ac36b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "item": "minecraft:glass" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:lens" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json new file mode 100644 index 0000000000..d5401c0952 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json new file mode 100644 index 0000000000..25c32f412c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat_seeds" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..ab923e9b61 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:arrow" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json new file mode 100644 index 0000000000..c41a3223de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:bread" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..157dff5b64 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..c79d6fd805 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_iron" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..4a87fb83dd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_copper" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json new file mode 100644 index 0000000000..3922bf5fa1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:stone_brick_wall" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..788be0d074 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:water_bucket" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..db56478852 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass_bottle" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json new file mode 100644 index 0000000000..0cf8605f6e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:azalea" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..60faeb98cb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:honeycomb" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..1592908ece --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:moss_block" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json new file mode 100644 index 0000000000..662aaf38fc --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:repeater" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json new file mode 100644 index 0000000000..cce2b91ea8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:egg" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json new file mode 100644 index 0000000000..cf7a4fcfb1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "PPA", + "PPP", + "PPP" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json new file mode 100644 index 0000000000..85b2a98f34 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "PP ", + "PP " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_medium" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json new file mode 100644 index 0000000000..1feb96a530 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:paper" + }, + "D": { + "item": "minecraft:paper" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:scroll_paper" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json new file mode 100644 index 0000000000..5434f4c7f1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json new file mode 100644 index 0000000000..c64a3e544a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "P " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json new file mode 100644 index 0000000000..eb718972c2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "S": { + "item": "minecraft:deepslate" + } + }, + "pattern": [ + " A ", + "SSS" + ], + "result": { + "count": 6, + "id": "hexcasting:slate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json new file mode 100644 index 0000000000..975fea26a0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:deepslate" + }, + "D": { + "item": "minecraft:deepslate" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json new file mode 100644 index 0000000000..92bf412fdf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "hexcasting:slate" + } + }, + "pattern": [ + "S", + "S" + ], + "result": { + "count": 1, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json new file mode 100644 index 0000000000..0d8bbb5971 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:writable_book" + }, + "F": { + "item": "minecraft:chorus_fruit" + }, + "N": [ + { + "item": "minecraft:gold_nugget" + }, + { + "tag": "c:gold_nuggets" + } + ] + }, + "pattern": [ + "NBA", + "NFA", + "NBA" + ], + "result": { + "count": 1, + "id": "hexcasting:spellbook" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json new file mode 100644 index 0000000000..a5e01a9c9a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:acacia_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/acacia" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json new file mode 100644 index 0000000000..8c648a860c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:bamboo_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/bamboo" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json new file mode 100644 index 0000000000..2cee68c976 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:birch_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/birch" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json new file mode 100644 index 0000000000..fb19b26271 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:cherry_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/cherry" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json new file mode 100644 index 0000000000..6f8b4dd09e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:crimson_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/crimson" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json new file mode 100644 index 0000000000..b4a9aea823 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:dark_oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/dark_oak" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json new file mode 100644 index 0000000000..29378f8085 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:edified_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/edified" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json new file mode 100644 index 0000000000..a3b382cf11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:jungle_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/jungle" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json new file mode 100644 index 0000000000..2ad01c0d69 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:mangrove_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mangrove" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json new file mode 100644 index 0000000000..41c9e8abb0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:brainswept_circle_components" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mindsplice" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json new file mode 100644 index 0000000000..75d6d9daab --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/oak" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json new file mode 100644 index 0000000000..91fd1fc452 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:quenched_allay_shard" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/quenched" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json new file mode 100644 index 0000000000..0ab7166a60 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:spruce_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/spruce" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json new file mode 100644 index 0000000000..8a71b96aaf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:warped_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/warped" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..7eb40a9ada --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "item": "minecraft:amethyst_block" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json new file mode 100644 index 0000000000..0ccb5ae8e2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:stripped_edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:stripped_edified_wood" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json new file mode 100644 index 0000000000..82a511fde4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "B": { + "item": "minecraft:bread" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + " SA", + " C ", + " B " + ], + "result": { + "count": 1, + "id": "hexcasting:sub_sandwich" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json new file mode 100644 index 0000000000..d89ad83310 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust" + }, + { + "item": "minecraft:string" + } + ], + "result": { + "count": 1, + "id": "hexcasting:thought_knot" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json b/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json new file mode 100644 index 0000000000..f2e371553d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": [ + { + "item": "minecraft:iron_ingot" + }, + { + "tag": "c:iron_ingots" + } + ], + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:trinket" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json new file mode 100644 index 0000000000..235a2aff68 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:uuid_colorizer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json new file mode 100644 index 0000000000..7fc52a816b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:conjured_block", + "hexcasting:conjured_light" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json new file mode 100644 index 0000000000..e2e4a77147 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#minecraft:needs_diamond_tool", + "required": false + } + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json new file mode 100644 index 0000000000..0f2bcab34f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json @@ -0,0 +1,8 @@ +{ + "values": [ + "minecraft:kelp", + "minecraft:kelp_plant", + "minecraft:seagrass", + "minecraft:tall_seagrass" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json new file mode 100644 index 0000000000..1f7070a707 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:amethyst_dust", + "minecraft:amethyst_shard", + "hexcasting:charged_amethyst", + "hexcasting:creative_unlocker" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json new file mode 100644 index 0000000000..52ac4c0c96 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:glass_bottle" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json new file mode 100644 index 0000000000..674a370049 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:honeycomb" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json new file mode 100644 index 0000000000..29f4595c62 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:staff/edified", + "hexcasting:staff/oak", + "hexcasting:staff/spruce", + "hexcasting:staff/birch", + "hexcasting:staff/jungle", + "hexcasting:staff/acacia", + "hexcasting:staff/dark_oak", + "hexcasting:staff/crimson", + "hexcasting:staff/warped", + "hexcasting:staff/mangrove", + "hexcasting:staff/cherry", + "hexcasting:staff/bamboo", + "hexcasting:staff/quenched", + "hexcasting:staff/mindsplice" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json new file mode 100644 index 0000000000..7a23dc1ec1 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:conjured_light", + "hexcasting:conjured_block", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_sconce" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json new file mode 100644 index 0000000000..269de59e0a --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json new file mode 100644 index 0000000000..0d6037e186 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -0,0 +1,25 @@ +{ + "values": [ + "hexcasting:akashic_record", + "hexcasting:akashic_bookshelf", + "hexcasting:akashic_ligature", + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood", + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile", + "hexcasting:edified_door", + "hexcasting:edified_trapdoor", + "hexcasting:edified_slab", + "hexcasting:edified_button", + "hexcasting:edified_stairs", + "hexcasting:edified_fence", + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000000..a8b1c2eb67 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,30 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_tiles", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_pillar", + "hexcasting:slate", + "hexcasting:directrix/empty", + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean", + "hexcasting:impetus/empty", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/look", + "hexcasting:impetus/redstone", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_pillar", + "hexcasting:slate_amethyst_tiles", + "hexcasting:slate_amethyst_bricks", + "hexcasting:slate_amethyst_bricks_small", + "hexcasting:slate_amethyst_pillar", + "hexcasting:amethyst_sconce", + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_tiles", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000000..02d08df2b3 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust_block" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json new file mode 100644 index 0000000000..117722b2be --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:edified_fence", + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 6eebc918c4..e63b3e12b2 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -1,5 +1,6 @@ package at.petrak.hexcasting.fabric +import at.petrak.hexcasting.api.HexAPI import at.petrak.hexcasting.api.HexAPI.modLoc import at.petrak.hexcasting.api.addldata.ADMediaHolder import at.petrak.hexcasting.api.advancements.HexAdvancementTriggers @@ -13,7 +14,6 @@ import at.petrak.hexcasting.common.casting.PatternRegistryManifest import at.petrak.hexcasting.common.casting.actions.spells.OpFlight import at.petrak.hexcasting.common.casting.actions.spells.great.OpAltiora import at.petrak.hexcasting.common.command.PatternResKeyArgument -import at.petrak.hexcasting.common.command.PatternResLocArgument import at.petrak.hexcasting.common.entities.HexEntities import at.petrak.hexcasting.common.items.ItemJewelerHammer import at.petrak.hexcasting.common.lib.* @@ -23,6 +23,8 @@ import at.petrak.hexcasting.common.misc.BrainsweepingEvents import at.petrak.hexcasting.common.misc.PlayerPositionRecorder import at.petrak.hexcasting.common.misc.RegisterMisc import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients import at.petrak.hexcasting.fabric.cc.HexCardinalComponents import at.petrak.hexcasting.fabric.cc.adimpl.CCMediaHolder import at.petrak.hexcasting.fabric.event.VillagerConversionCallback @@ -46,26 +48,16 @@ import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents import net.fabricmc.fabric.api.loot.v3.LootTableEvents import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer import net.fabricmc.fabric.api.registry.FlammableBlockRegistry -import net.minecraft.advancements.critereon.ItemPredicate import net.minecraft.commands.synchronization.SingletonArgumentInfo import net.minecraft.core.Registry import net.minecraft.core.registries.BuiltInRegistries -import net.minecraft.core.registries.Registries import net.minecraft.resources.ResourceLocation -import net.minecraft.tags.ItemTags import net.minecraft.world.InteractionResult import net.minecraft.world.entity.player.Player import net.minecraft.world.item.Items -import net.minecraft.world.item.enchantment.Enchantments import net.minecraft.world.level.block.Blocks import net.minecraft.world.level.block.state.properties.BlockSetType -import net.minecraft.world.level.storage.loot.LootPool -import net.minecraft.world.level.storage.loot.entries.LootItem -import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction -import net.minecraft.world.level.storage.loot.predicates.MatchTool -import net.minecraft.world.level.storage.loot.providers.number.ConstantValue -import net.minecraft.world.level.storage.loot.providers.number.LootNumberProviderType import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator import java.util.function.BiConsumer @@ -74,6 +66,7 @@ object FabricHexInitializer : ModInitializer { override fun onInitialize() { this.CONFIG = FabricHexConfig.setup() + HexAPI.LOGGER.info("Testing for datagen...") FabricPacketHandler.initPackets() FabricPacketHandler.init() @@ -166,6 +159,7 @@ object FabricHexInitializer : ModInitializer { HexAttributes.register() HexMobEffects.register(bind(BuiltInRegistries.MOB_EFFECT)) HexPotions.registerPotions(bind(BuiltInRegistries.POTION)) + HexDataComponents.registerDataComponents(bind(BuiltInRegistries.DATA_COMPONENT_TYPE)) HexRecipeStuffRegistry.registerSerializers(bind(BuiltInRegistries.RECIPE_SERIALIZER)) HexRecipeStuffRegistry.registerTypes(bind(BuiltInRegistries.RECIPE_TYPE)) @@ -180,6 +174,9 @@ object FabricHexInitializer : ModInitializer { HexArithmetics.register(bind(IXplatAbstractions.INSTANCE.arithmeticRegistry)) HexContinuationTypes.registerContinuations(bind(IXplatAbstractions.INSTANCE.continuationTypeRegistry)) HexEvalSounds.register(bind(IXplatAbstractions.INSTANCE.evalSoundRegistry)) + StateIngredients.register(bind(IXplatAbstractions.INSTANCE.stateIngredientRegistry)) + BrainsweepeeIngredients.register(bind(IXplatAbstractions.INSTANCE.brainsweepeeIngredientRegistry)) + // Because of Java's lazy-loading of classes, can't use Kotlin static initialization for // any calls that will eventually touch FeatureUtils.register(), as the growers here do, diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java index 828eddea9d..c559c45eb8 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java @@ -8,11 +8,14 @@ import at.petrak.hexcasting.datagen.tag.HexActionTagProvider; import at.petrak.hexcasting.datagen.tag.HexBlockTagProvider; import at.petrak.hexcasting.datagen.tag.HexItemTagProvider; +import at.petrak.hexcasting.fabric.FabricHexInitializer; import at.petrak.hexcasting.fabric.recipe.FabricModConditionalIngredient; +import at.petrak.hexcasting.fabric.xplat.FabricXplatImpl; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.google.gson.JsonObject; import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint; import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator; +import net.minecraft.core.RegistrySetBuilder; import net.minecraft.core.registries.Registries; import net.minecraft.data.loot.LootTableProvider; import net.minecraft.resources.ResourceLocation; @@ -165,4 +168,9 @@ private static TagKey tag(String s) { private static TagKey tag(String namespace, String s) { return TagKey.create(Registries.ITEM, ResourceLocation.fromNamespaceAndPath(namespace, s)); } + + @Override + public void buildRegistry(RegistrySetBuilder registryBuilder) { + + } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index 47edc89a98..dc8fc104bf 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -449,14 +449,16 @@ public String getModName(String namespace) { ); private static final Supplier>> STATE_INGREDIENT_REGISTRY = Suppliers.memoize(() -> - FabricRegistryBuilder.from(new MappedRegistry<>( + FabricRegistryBuilder.from(new DefaultedMappedRegistry<>( + HexAPI.MOD_ID + ":none", HexRegistries.STATE_INGREDIENT, Lifecycle.stable(), false)) .buildAndRegister() ); private static final Supplier>> BRAINSWEEPEE_INGREDIENT_REGISTRY = Suppliers.memoize(() -> - FabricRegistryBuilder.from(new MappedRegistry<>( + FabricRegistryBuilder.from(new DefaultedMappedRegistry<>( + HexAPI.MOD_ID + ":none", HexRegistries.BRAINSWEEPEE_INGREDIENT, Lifecycle.stable(), false)) .buildAndRegister() diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 11a9de2ed5..0e9c83558e 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -127,7 +127,7 @@ def generatedResources = project(":Common").file("src/generated/resources") loom { runs { - create("forgeXplatDatagen") { + create("xplatDatagen") { data() name "Forge Xplat Datagen" @@ -139,6 +139,18 @@ loom { programArgs "--existing", file("src/main/resources").absolutePath programArgs "--existing", generatedResources.absolutePath } + create("Datagen") { + data() + name "NeoForge Datagen" + + vmArg("-Dhexcasting.neoforge_datagen") + + programArgs "--all", "--mod", project.modID + programArgs "--output", file("src/generated/resources").absolutePath + programArgs "--existing", project(":Common").file("src/main/resources").absolutePath + programArgs "--existing", file("src/main/resources").absolutePath + programArgs "--existing", file("src/generated/resources").absolutePath + } } } diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json new file mode 100644 index 0000000000..2f79ec12a3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json @@ -0,0 +1,107 @@ +{ + "variants": { + "facing=east,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 90 + }, + "facing=east,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 90 + } + ], + "facing=north,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true + }, + "facing=north,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true + } + ], + "facing=south,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 180 + }, + "facing=south,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 180 + } + ], + "facing=west,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 270 + }, + "facing=west,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 270 + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json new file mode 100644 index 0000000000..c4552b4918 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_ligature" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json new file mode 100644 index 0000000000..c2aa512a1e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_record" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json new file mode 100644 index 0000000000..267e1b4d43 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json new file mode 100644 index 0000000000..66b78f9a12 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json new file mode 100644 index 0000000000..c27c62ffcb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_dust_block" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json new file mode 100644 index 0000000000..db8af585b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json new file mode 100644 index 0000000000..257e10ca4d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json @@ -0,0 +1,30 @@ +{ + "variants": { + "facing=down": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 180 + }, + "facing=east": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 90 + }, + "facing=north": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90 + }, + "facing=south": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 180 + }, + "facing=up": { + "model": "hexcasting:block/deco/amethyst_pillar" + }, + "facing=west": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json new file mode 100644 index 0000000000..af52410929 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_sconce" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json new file mode 100644 index 0000000000..b716f2a5a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json new file mode 100644 index 0000000000..1c809c022b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..3a632c39f3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json new file mode 100644 index 0000000000..10383418f7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/aventurine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json new file mode 100644 index 0000000000..3207814e50 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/citrine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json new file mode 100644 index 0000000000..155f55cfe6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json @@ -0,0 +1,142 @@ +{ + "variants": { + "energized=false,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_down", + "x": 90 + }, + "energized=false,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_down", + "x": 90 + }, + "energized=false,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_down", + "x": 90 + }, + "energized=false,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_east", + "y": 90 + }, + "energized=false,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_east", + "y": 90 + }, + "energized=false,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_east", + "y": 90 + }, + "energized=false,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_north" + }, + "energized=false,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_north" + }, + "energized=false,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_north" + }, + "energized=false,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_south", + "y": 180 + }, + "energized=false,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_south", + "y": 180 + }, + "energized=false,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_south", + "y": 180 + }, + "energized=false,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_up", + "x": -90 + }, + "energized=false,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_up", + "x": -90 + }, + "energized=false,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_up", + "x": -90 + }, + "energized=false,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_west", + "y": 270 + }, + "energized=false,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_west", + "y": 270 + }, + "energized=false,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_west", + "y": 270 + }, + "energized=true,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_down", + "x": 90 + }, + "energized=true,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_down", + "x": 90 + }, + "energized=true,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_down", + "x": 90 + }, + "energized=true,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_east", + "y": 90 + }, + "energized=true,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_east", + "y": 90 + }, + "energized=true,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_east", + "y": 90 + }, + "energized=true,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_north" + }, + "energized=true,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_north" + }, + "energized=true,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_north" + }, + "energized=true,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_south", + "y": 180 + }, + "energized=true,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_south", + "y": 180 + }, + "energized=true,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_south", + "y": 180 + }, + "energized=true,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_up", + "x": -90 + }, + "energized=true,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_up", + "x": -90 + }, + "energized=true,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_up", + "x": -90 + }, + "energized=true,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_west", + "y": 270 + }, + "energized=true,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_west", + "y": 270 + }, + "energized=true,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json new file mode 100644 index 0000000000..33b013562c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json new file mode 100644 index 0000000000..c93068cabf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json new file mode 100644 index 0000000000..81efad6fd6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json @@ -0,0 +1,118 @@ +{ + "variants": { + "face=ceiling,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180 + }, + "face=ceiling,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180 + }, + "face=ceiling,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 90 + }, + "face=ceiling,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 90 + }, + "face=floor,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 90 + }, + "face=floor,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 90 + }, + "face=floor,facing=north,powered=false": { + "model": "hexcasting:block/edified_button" + }, + "face=floor,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed" + }, + "face=floor,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 180 + }, + "face=floor,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 180 + }, + "face=floor,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 270 + }, + "face=floor,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 270 + }, + "face=wall,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 270 + }, + "face=wall,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json new file mode 100644 index 0000000000..029d3bd5d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json @@ -0,0 +1,124 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left" + }, + "facing=east,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 90 + }, + "facing=east,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right" + }, + "facing=east,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 270 + }, + "facing=east,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left" + }, + "facing=east,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 90 + }, + "facing=east,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right" + }, + "facing=east,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open" + }, + "facing=north,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 270 + }, + "facing=north,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 180 + }, + "facing=north,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 270 + }, + "facing=north,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open" + }, + "facing=north,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 270 + }, + "facing=north,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 180 + }, + "facing=south,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 90 + }, + "facing=south,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 180 + }, + "facing=south,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 90 + }, + "facing=south,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open" + }, + "facing=south,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 90 + }, + "facing=south,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 180 + }, + "facing=south,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 90 + }, + "facing=south,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open" + }, + "facing=west,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 180 + }, + "facing=west,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 270 + }, + "facing=west,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 180 + }, + "facing=west,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 90 + }, + "facing=west,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 180 + }, + "facing=west,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 270 + }, + "facing=west,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 180 + }, + "facing=west,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json new file mode 100644 index 0000000000..7167013cf7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json @@ -0,0 +1,48 @@ +{ + "multipart": [ + { + "apply": { + "model": "hexcasting:block/edified_fence_post" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true + }, + "when": { + "north": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 180 + }, + "when": { + "south": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 270 + }, + "when": { + "west": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 90 + }, + "when": { + "east": "true" + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json new file mode 100644 index 0000000000..f925ddfddd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json @@ -0,0 +1,80 @@ +{ + "variants": { + "facing=east,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 270 + }, + "facing=north,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 180 + }, + "facing=south,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true + }, + "facing=south,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true + }, + "facing=south,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true + }, + "facing=south,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true + }, + "facing=west,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json new file mode 100644 index 0000000000..4cd8fe5d14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json new file mode 100644 index 0000000000..7526dda321 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_amethyst" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json new file mode 100644 index 0000000000..ed8e454e7e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_aventurine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json new file mode 100644 index 0000000000..258b377acb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_citrine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json new file mode 100644 index 0000000000..078f72a986 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_purple" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json new file mode 100644 index 0000000000..17d99a7903 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_panel" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json new file mode 100644 index 0000000000..a2d790f061 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json @@ -0,0 +1,17 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/edified_planks", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_2", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_3" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json new file mode 100644 index 0000000000..6da4bab988 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json @@ -0,0 +1,10 @@ +{ + "variants": { + "powered=false": { + "model": "hexcasting:block/edified_pressure_plate" + }, + "powered=true": { + "model": "hexcasting:block/edified_pressure_plate_down" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json new file mode 100644 index 0000000000..6a4d4be0d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json @@ -0,0 +1,13 @@ +{ + "variants": { + "type=bottom": { + "model": "hexcasting:block/edified_slab" + }, + "type=double": { + "model": "hexcasting:block/edified_planks" + }, + "type=top": { + "model": "hexcasting:block/edified_slab_top" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json new file mode 100644 index 0000000000..23ac40ca7e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json new file mode 100644 index 0000000000..23d71da006 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_tile" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json new file mode 100644 index 0000000000..0df527ca32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 90 + }, + "facing=east,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 90 + }, + "facing=east,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 90 + }, + "facing=east,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 270 + }, + "facing=north,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom" + }, + "facing=north,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open" + }, + "facing=north,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top" + }, + "facing=north,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 180 + }, + "facing=south,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 180 + }, + "facing=south,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 180 + }, + "facing=south,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 180 + }, + "facing=south,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180 + }, + "facing=west,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 270 + }, + "facing=west,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 270 + }, + "facing=west,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 270 + }, + "facing=west,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json new file mode 100644 index 0000000000..1d963101fc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json new file mode 100644 index 0000000000..057ad53aa6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json new file mode 100644 index 0000000000..0db9af4b2d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/look/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/look/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/look/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/look/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/look/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/look/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/look/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/look/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/look/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/look/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/look/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/look/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json new file mode 100644 index 0000000000..2ad46e21cd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json new file mode 100644 index 0000000000..32a772b27e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json new file mode 100644 index 0000000000..c6bce09cb5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json new file mode 100644 index 0000000000..e3d66f7ed3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..72aad9ca91 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json new file mode 100644 index 0000000000..ddb791a0b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json new file mode 100644 index 0000000000..2621fa1b04 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json new file mode 100644 index 0000000000..328e1b46d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json new file mode 100644 index 0000000000..8d7a817cc1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json @@ -0,0 +1,122 @@ +{ + "variants": { + "energized=false,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=false,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=false,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=false,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + }, + "energized=true,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=true,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=true,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=true,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json new file mode 100644 index 0000000000..e99315f3fa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_2" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..e6b5557c2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json new file mode 100644 index 0000000000..056bc449b3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_amethyst_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json new file mode 100644 index 0000000000..4c5f5d614b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json new file mode 100644 index 0000000000..35169aaa2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/slate_block" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json new file mode 100644 index 0000000000..003a0daafe --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json new file mode 100644 index 0000000000..cdd21fd4d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json new file mode 100644 index 0000000000..6d0e098f31 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json new file mode 100644 index 0000000000..1482ae0827 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json new file mode 100644 index 0000000000..cb09f0122f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_log" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json new file mode 100644 index 0000000000..b6b89e3f85 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json new file mode 100644 index 0000000000..dd5103c118 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json @@ -0,0 +1,68 @@ +{ + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#top_bottom" + }, + "east": { + "cullface": "east", + "texture": "#side" + }, + "north": { + "cullface": "north", + "texture": "#front" + }, + "south": { + "cullface": "south", + "texture": "#side" + }, + "up": { + "cullface": "up", + "texture": "#top_bottom" + }, + "west": { + "cullface": "west", + "texture": "#side" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "north": { + "cullface": "north", + "texture": "#overlay", + "tintindex": 0 + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + } + ], + "render_type": "minecraft:cutout", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "particle": "hexcasting:block/akashic_bookshelf_vert", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top_bottom": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json new file mode 100644 index 0000000000..2402c6c597 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json new file mode 100644 index 0000000000..4846d3c2e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json new file mode 100644 index 0000000000..9352317b12 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json new file mode 100644 index 0000000000..4f98ee656b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json new file mode 100644 index 0000000000..9b788e5d7c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/orientable", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json new file mode 100644 index 0000000000..72a32c3aa8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json new file mode 100644 index 0000000000..7068b7d62f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json @@ -0,0 +1,87 @@ +{ + "parent": "minecraft:block/block", + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#outer" + }, + "east": { + "cullface": "east", + "texture": "#outer" + }, + "north": { + "cullface": "north", + "texture": "#outer" + }, + "south": { + "cullface": "south", + "texture": "#outer" + }, + "up": { + "cullface": "up", + "texture": "#outer" + }, + "west": { + "cullface": "west", + "texture": "#outer" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "down": { + "rotation": 180, + "texture": "#inner" + }, + "east": { + "rotation": 180, + "texture": "#inner" + }, + "north": { + "rotation": 180, + "texture": "#inner" + }, + "south": { + "rotation": 180, + "texture": "#inner" + }, + "up": { + "rotation": 180, + "texture": "#inner" + }, + "west": { + "rotation": 180, + "texture": "#inner" + } + }, + "from": [ + 15.75, + 15.75, + 15.75 + ], + "to": [ + 0.25, + 0.25, + 0.25 + ] + } + ], + "render_type": "minecraft:translucent", + "textures": { + "inner": "hexcasting:block/akashic_ligature", + "outer": "hexcasting:block/akashic_record", + "particle": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json new file mode 100644 index 0000000000..8fa450ab32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/cube_half_mirrored", + "textures": { + "all": "hexcasting:block/amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json new file mode 100644 index 0000000000..463617eb53 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/amethyst_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json new file mode 100644 index 0000000000..5b5b77bbf0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..19fc5366df --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/ancient_scroll_paper_lantern_bottom", + "side": "hexcasting:block/ancient_scroll_paper_lantern_side", + "top": "hexcasting:block/ancient_scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json new file mode 100644 index 0000000000..eb1802e0b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/aventurine_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json new file mode 100644 index 0000000000..3bef12c734 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/citrine_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json new file mode 100644 index 0000000000..9f80c11ee0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json @@ -0,0 +1,6 @@ +{ + "render_type": "minecraft:cutout", + "textures": { + "particle": "minecraft:block/amethyst_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json new file mode 100644 index 0000000000..89c8ec51c2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json new file mode 100644 index 0000000000..fc1202b603 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json new file mode 100644 index 0000000000..5ee8934b7a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/deco/amethyst_pillar_bottom", + "side": "hexcasting:block/deco/amethyst_pillar_side", + "top": "hexcasting:block/deco/amethyst_pillar_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json new file mode 100644 index 0000000000..ab9ffcda39 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json new file mode 100644 index 0000000000..61215cda68 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json new file mode 100644 index 0000000000..536da9000b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json new file mode 100644 index 0000000000..e45bf99d14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json new file mode 100644 index 0000000000..91ade20515 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json new file mode 100644 index 0000000000..e6b6bd7b22 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json new file mode 100644 index 0000000000..7da0cdfcf8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json new file mode 100644 index 0000000000..6d6150b8d5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json new file mode 100644 index 0000000000..758194fe82 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json new file mode 100644 index 0000000000..5c83c33eb0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json new file mode 100644 index 0000000000..910ec09904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json new file mode 100644 index 0000000000..4d565a54ae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json new file mode 100644 index 0000000000..a9072bacc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json new file mode 100644 index 0000000000..ad3c92af5d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json new file mode 100644 index 0000000000..1f24ff9a6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json new file mode 100644 index 0000000000..e106adbead --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json new file mode 100644 index 0000000000..2c80ba1498 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json new file mode 100644 index 0000000000..7fb51bcd7c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json new file mode 100644 index 0000000000..3b262eafff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json new file mode 100644 index 0000000000..d18efee914 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json new file mode 100644 index 0000000000..1c75ef18d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json new file mode 100644 index 0000000000..a026dba7ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_pressed", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json new file mode 100644 index 0000000000..610c3ae5b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json new file mode 100644 index 0000000000..acf2e96275 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json new file mode 100644 index 0000000000..2eaa905b77 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json new file mode 100644 index 0000000000..8a46564f74 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json new file mode 100644 index 0000000000..90ea9df1d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json new file mode 100644 index 0000000000..5573390683 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json new file mode 100644 index 0000000000..3a78e863b7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json new file mode 100644 index 0000000000..26d8c1a200 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json new file mode 100644 index 0000000000..c3015ca6d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json new file mode 100644 index 0000000000..ac141eb406 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json new file mode 100644 index 0000000000..ea98b16740 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json new file mode 100644 index 0000000000..86d82ca2fc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json new file mode 100644 index 0000000000..281f2acc6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json new file mode 100644 index 0000000000..707af51bf2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_side", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json new file mode 100644 index 0000000000..9ba1530b0c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json new file mode 100644 index 0000000000..e9833c81a8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json new file mode 100644 index 0000000000..fdfc8bd1c1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json new file mode 100644 index 0000000000..f9f832f6ee --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json new file mode 100644 index 0000000000..e7ddcd8ed5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json new file mode 100644 index 0000000000..ea1b1d60a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json new file mode 100644 index 0000000000..2ae70b9aef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json new file mode 100644 index 0000000000..84e434e72a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json new file mode 100644 index 0000000000..70736370d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json new file mode 100644 index 0000000000..235890db18 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json new file mode 100644 index 0000000000..3d790f2af0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_panel" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json new file mode 100644 index 0000000000..a722301054 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json new file mode 100644 index 0000000000..d0c4c5832b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json new file mode 100644 index 0000000000..bad8e6ac05 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json new file mode 100644 index 0000000000..5a1b2b5727 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_up", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json new file mode 100644 index 0000000000..eeaa36461c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_down", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json new file mode 100644 index 0000000000..09d601ec7b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json new file mode 100644 index 0000000000..f4d2fcf98c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab_top", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json new file mode 100644 index 0000000000..6e9ae9aaae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json new file mode 100644 index 0000000000..7597f2c8a4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/inner_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json new file mode 100644 index 0000000000..62d7ab50a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/outer_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json new file mode 100644 index 0000000000..595adf007a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_tile" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json new file mode 100644 index 0000000000..9c65b36965 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_bottom", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json new file mode 100644 index 0000000000..40217afd9c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_open", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json new file mode 100644 index 0000000000..325f5d4351 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_top", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json new file mode 100644 index 0000000000..22851df079 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json new file mode 100644 index 0000000000..72149b4bc9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json new file mode 100644 index 0000000000..441d91052a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json new file mode 100644 index 0000000000..a561a358cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json new file mode 100644 index 0000000000..a6fe237391 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json new file mode 100644 index 0000000000..621451b72c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json new file mode 100644 index 0000000000..3c16a2113f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/scroll_paper_lantern_bottom", + "side": "hexcasting:block/scroll_paper_lantern_side", + "top": "hexcasting:block/scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1ec3ef6cf3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json new file mode 100644 index 0000000000..bbd24d1c98 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json new file mode 100644 index 0000000000..2d8635f925 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json new file mode 100644 index 0000000000..697f4daab2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json new file mode 100644 index 0000000000..cca16a0c07 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json new file mode 100644 index 0000000000..4aa871e92c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json new file mode 100644 index 0000000000..0925c23c78 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json new file mode 100644 index 0000000000..8ef17c0d21 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json new file mode 100644 index 0000000000..57dcfcc53c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json new file mode 100644 index 0000000000..f6947c4360 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/abacus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json new file mode 100644 index 0000000000..7c88c3e218 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf_empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json new file mode 100644 index 0000000000..de9a37be49 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_ligature" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json new file mode 100644 index 0000000000..1ea5e0eeb6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_record" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json new file mode 100644 index 0000000000..5ec0842948 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json new file mode 100644 index 0000000000..1b8fe48dd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json new file mode 100644 index 0000000000..140659dfab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json new file mode 100644 index 0000000000..8cd53fc3ab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_dust_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json new file mode 100644 index 0000000000..d6015ea1f2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json new file mode 100644 index 0000000000..98d9d0c82f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json new file mode 100644 index 0000000000..bb1657f9a1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_sconce" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json new file mode 100644 index 0000000000..b8ecd40c70 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json new file mode 100644 index 0000000000..ffc8b5e1cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/ancient_cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json new file mode 100644 index 0000000000..b38ad18d6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher", + "layer1": "hexcasting:item/cad/0_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json new file mode 100644 index 0000000000..e8b7b12d55 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json new file mode 100644 index 0000000000..856b0a26d7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher", + "layer1": "hexcasting:item/cad/1_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json new file mode 100644 index 0000000000..3badfcdd0f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json new file mode 100644 index 0000000000..effb9e0198 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher", + "layer1": "hexcasting:item/cad/2_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json new file mode 100644 index 0000000000..98aabd91e8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json new file mode 100644 index 0000000000..2f19e9feea --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher", + "layer1": "hexcasting:item/cad/3_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json new file mode 100644 index 0000000000..93318f7bc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json new file mode 100644 index 0000000000..081cfd65c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher", + "layer1": "hexcasting:item/cad/4_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json new file mode 100644 index 0000000000..9d247cdd23 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json new file mode 100644 index 0000000000..0ed6accc2a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher", + "layer1": "hexcasting:item/cad/5_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json new file mode 100644 index 0000000000..bf9c9fe505 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json new file mode 100644 index 0000000000..199292d90f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher", + "layer1": "hexcasting:item/cad/6_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json new file mode 100644 index 0000000000..56e0653080 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json new file mode 100644 index 0000000000..b408892c14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher", + "layer1": "hexcasting:item/cad/7_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json new file mode 100644 index 0000000000..810d0e68c5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..39cf0ac289 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json new file mode 100644 index 0000000000..d0db0e434f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/artifact", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/artifact_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json new file mode 100644 index 0000000000..1e835b5f74 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_artifact", + "layer1": "hexcasting:item/cad/0_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json new file mode 100644 index 0000000000..870900b6f1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json new file mode 100644 index 0000000000..a0f005be3f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact", + "layer1": "hexcasting:item/cad/1_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json new file mode 100644 index 0000000000..f2f7fbea97 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json new file mode 100644 index 0000000000..cade3931d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact", + "layer1": "hexcasting:item/cad/2_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json new file mode 100644 index 0000000000..2cb6553e13 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json new file mode 100644 index 0000000000..23c0456285 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact", + "layer1": "hexcasting:item/cad/3_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json new file mode 100644 index 0000000000..216c308d2c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json new file mode 100644 index 0000000000..d48959f9d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact", + "layer1": "hexcasting:item/cad/4_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json new file mode 100644 index 0000000000..4a6f9ef1fb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json new file mode 100644 index 0000000000..1f64bdfda5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact", + "layer1": "hexcasting:item/cad/5_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json new file mode 100644 index 0000000000..c66d93ec85 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json new file mode 100644 index 0000000000..3d5f969ddf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact", + "layer1": "hexcasting:item/cad/6_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json new file mode 100644 index 0000000000..1b89f90904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json new file mode 100644 index 0000000000..0e9043060d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact", + "layer1": "hexcasting:item/cad/7_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json new file mode 100644 index 0000000000..0ae3302116 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json new file mode 100644 index 0000000000..11be0c6cd1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json @@ -0,0 +1,179 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/phial_small_0", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_small_1", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_small_2", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_small_3", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_small_4", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_medium_0", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_medium_1", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_medium_2", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_medium_3", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_medium_4", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_large_0", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_large_1", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_large_2", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_large_3", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_large_4", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_larger_0", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_larger_1", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_larger_2", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_larger_3", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_larger_4", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_largest_0", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_largest_1", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_largest_2", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_largest_3", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_largest_4", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json new file mode 100644 index 0000000000..2d147958cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/charged_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json new file mode 100644 index 0000000000..f44ca6c924 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json new file mode 100644 index 0000000000..452b44f612 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/creative_unlocker" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json new file mode 100644 index 0000000000..1a93187096 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json new file mode 100644 index 0000000000..190be7e602 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_cypher", + "layer1": "hexcasting:item/cad/0_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json new file mode 100644 index 0000000000..71a9ff7cc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json new file mode 100644 index 0000000000..abff99cd2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher", + "layer1": "hexcasting:item/cad/1_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json new file mode 100644 index 0000000000..f7b22a7958 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json new file mode 100644 index 0000000000..75143f8a30 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher", + "layer1": "hexcasting:item/cad/2_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json new file mode 100644 index 0000000000..da55138305 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json new file mode 100644 index 0000000000..cbac2eaf44 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher", + "layer1": "hexcasting:item/cad/3_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json new file mode 100644 index 0000000000..90430a8f8a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json new file mode 100644 index 0000000000..e56ed90c0a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher", + "layer1": "hexcasting:item/cad/4_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json new file mode 100644 index 0000000000..138fe59a96 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json new file mode 100644 index 0000000000..eeb6161967 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher", + "layer1": "hexcasting:item/cad/5_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json new file mode 100644 index 0000000000..bdb310d836 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json new file mode 100644 index 0000000000..f9ed07c951 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher", + "layer1": "hexcasting:item/cad/6_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json new file mode 100644 index 0000000000..29e4768e9a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json new file mode 100644 index 0000000000..2de0bb8752 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher", + "layer1": "hexcasting:item/cad/7_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json new file mode 100644 index 0000000000..0b76dd8f8f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/uuid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json new file mode 100644 index 0000000000..cd729d804c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/boolean/lit_false_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json new file mode 100644 index 0000000000..98be3ef487 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/empty/dim_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json new file mode 100644 index 0000000000..e2b947d5a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json new file mode 100644 index 0000000000..2f55b6c22b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_black" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json new file mode 100644 index 0000000000..add421a999 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json new file mode 100644 index 0000000000..3be301eb1a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_brown" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json new file mode 100644 index 0000000000..c436f3155b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_cyan" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json new file mode 100644 index 0000000000..146f01411c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json new file mode 100644 index 0000000000..679f147944 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_green" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..433877e853 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..f5625b67c2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json new file mode 100644 index 0000000000..c1cf22959e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_lime" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json new file mode 100644 index 0000000000..12dcaa82c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_magenta" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json new file mode 100644 index 0000000000..99679c17f8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_orange" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json new file mode 100644 index 0000000000..c138e93ff0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_pink" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json new file mode 100644 index 0000000000..d31e3b601c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json new file mode 100644 index 0000000000..1fb8f9dd4d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_red" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json new file mode 100644 index 0000000000..db4d15eb32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_white" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json new file mode 100644 index 0000000000..594bb0a09d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_yellow" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json new file mode 100644 index 0000000000..e18736c2c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_inventory", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json new file mode 100644 index 0000000000..5d6fb8d7ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/edified_door" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json new file mode 100644 index 0000000000..db31b01904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_inventory" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json new file mode 100644 index 0000000000..3dfe521195 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_gate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json new file mode 100644 index 0000000000..d3c7aeeb06 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json new file mode 100644 index 0000000000..8e80eb679a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_amethyst" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json new file mode 100644 index 0000000000..45007ec40b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_aventurine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json new file mode 100644 index 0000000000..9cae394851 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_citrine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json new file mode 100644 index 0000000000..62c67453ce --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_purple" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json new file mode 100644 index 0000000000..355e2765e1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_panel" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json new file mode 100644 index 0000000000..4ed5d45aab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_planks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json new file mode 100644 index 0000000000..921f7f5bd0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_pressure_plate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json new file mode 100644 index 0000000000..4772af6ed1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_slab" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json new file mode 100644 index 0000000000..90eb4d5123 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_stairs" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json new file mode 100644 index 0000000000..05702f6ed8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_tile" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json new file mode 100644 index 0000000000..8c89f1e881 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_trapdoor_bottom" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json new file mode 100644 index 0000000000..c9bfee3a01 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json new file mode 100644 index 0000000000..78328a9dee --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/focus", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json new file mode 100644 index 0000000000..508a3497f6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_filled", + "layer1": "hexcasting:item/cad/0_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json new file mode 100644 index 0000000000..0a64292241 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_sealed", + "layer1": "hexcasting:item/cad/0_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json new file mode 100644 index 0000000000..75d8bf400d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json new file mode 100644 index 0000000000..bd04934627 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_filled", + "layer1": "hexcasting:item/cad/1_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json new file mode 100644 index 0000000000..001bf05b5a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_sealed", + "layer1": "hexcasting:item/cad/1_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json new file mode 100644 index 0000000000..a9ef859978 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json new file mode 100644 index 0000000000..05c2799dfc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_filled", + "layer1": "hexcasting:item/cad/2_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json new file mode 100644 index 0000000000..1c7c230bef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_sealed", + "layer1": "hexcasting:item/cad/2_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json new file mode 100644 index 0000000000..fb366d08b2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json new file mode 100644 index 0000000000..3ad27dfcdf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_filled", + "layer1": "hexcasting:item/cad/3_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json new file mode 100644 index 0000000000..447b7b4198 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_sealed", + "layer1": "hexcasting:item/cad/3_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json new file mode 100644 index 0000000000..a3c1bf4eb2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json new file mode 100644 index 0000000000..8b9eb2024f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_filled", + "layer1": "hexcasting:item/cad/4_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json new file mode 100644 index 0000000000..2831235f44 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_sealed", + "layer1": "hexcasting:item/cad/4_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json new file mode 100644 index 0000000000..e13b4fa14b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json new file mode 100644 index 0000000000..cbac2be535 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_filled", + "layer1": "hexcasting:item/cad/5_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json new file mode 100644 index 0000000000..248801d925 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_sealed", + "layer1": "hexcasting:item/cad/5_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json new file mode 100644 index 0000000000..3bc3f8518f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json new file mode 100644 index 0000000000..e950df1223 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_filled", + "layer1": "hexcasting:item/cad/6_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json new file mode 100644 index 0000000000..c10282e6b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_sealed", + "layer1": "hexcasting:item/cad/6_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json new file mode 100644 index 0000000000..8ad8085617 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json new file mode 100644 index 0000000000..e6d7b1f28d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_filled", + "layer1": "hexcasting:item/cad/7_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json new file mode 100644 index 0000000000..52d149f4ae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_sealed", + "layer1": "hexcasting:item/cad/7_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json new file mode 100644 index 0000000000..68e7192da1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/empty/dim_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json new file mode 100644 index 0000000000..73f69303be --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/look/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json new file mode 100644 index 0000000000..523b5343b6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/redstone/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json new file mode 100644 index 0000000000..381232171f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/rightclick/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json new file mode 100644 index 0000000000..22447e1fbd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/jeweler_hammer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json new file mode 100644 index 0000000000..2fdc8f9ce5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "display": { + "head": { + "scale": [ + 0.4, + 0.4, + 0.4 + ], + "translation": [ + -2.5, + 0, + -8 + ] + } + }, + "textures": { + "layer0": "hexcasting:item/lens" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json new file mode 100644 index 0000000000..2b2f9e66fa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/lore_fragment" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json new file mode 100644 index 0000000000..f40e6b8ab1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/old" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json new file mode 100644 index 0000000000..a840c0e427 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/patchouli_book" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json new file mode 100644 index 0000000000..db3db02acd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json new file mode 100644 index 0000000000..bdff2d1022 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json new file mode 100644 index 0000000000..9c09bea449 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json new file mode 100644 index 0000000000..085960c8d8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json new file mode 100644 index 0000000000..c39357f8de --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json new file mode 100644 index 0000000000..d5e18bb295 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json new file mode 100644 index 0000000000..b19928c486 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json new file mode 100644 index 0000000000..ac7ed775cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json new file mode 100644 index 0000000000..b02ce98e95 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json new file mode 100644 index 0000000000..8b313df86f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json new file mode 100644 index 0000000000..0e44b418f2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json new file mode 100644 index 0000000000..4f456814f5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json new file mode 100644 index 0000000000..ab2bdf4a2b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json new file mode 100644 index 0000000000..10d70acab3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json new file mode 100644 index 0000000000..3c0682e560 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json new file mode 100644 index 0000000000..cb8b4c0920 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json new file mode 100644 index 0000000000..a7f30e8113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json new file mode 100644 index 0000000000..f9f5615cf2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json new file mode 100644 index 0000000000..dbfcb528bd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json new file mode 100644 index 0000000000..a7501a8e1b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json new file mode 100644 index 0000000000..fda398e2d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json new file mode 100644 index 0000000000..df784108aa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json new file mode 100644 index 0000000000..f868032c36 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json new file mode 100644 index 0000000000..ce4a7999b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json new file mode 100644 index 0000000000..bde40839db --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json new file mode 100644 index 0000000000..9c68ff47ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_agender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json new file mode 100644 index 0000000000..eb0fabc595 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aroace" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..7ea60f31e3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aromantic" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json new file mode 100644 index 0000000000..d40b1f2bcb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_asexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..e1d4b2d77f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_bisexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..cd0fe06093 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demiboy" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..afda4cabea --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demigirl" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json new file mode 100644 index 0000000000..353816c8ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_gay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..fe3641c797 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderfluid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..270eeb011f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderqueer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json new file mode 100644 index 0000000000..506facd3de --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_intersex" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..61d110d4cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_lesbian" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..0212b47a17 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_nonbinary" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json new file mode 100644 index 0000000000..706726a311 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_pansexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json new file mode 100644 index 0000000000..e6ecd7890e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_plural" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json new file mode 100644 index 0000000000..2655a8e596 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_transgender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json new file mode 100644 index 0000000000..c6ee6b0951 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/quenched_allay_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json new file mode 100644 index 0000000000..c3a1b63856 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0e376a548 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json new file mode 100644 index 0000000000..495e817b78 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/quenched_shard_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json new file mode 100644 index 0000000000..5ea5cf33c5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_tiles_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json new file mode 100644 index 0000000000..bdd43ddc80 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json new file mode 100644 index 0000000000..4cffa2efe0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json new file mode 100644 index 0000000000..e24c8dafbf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json new file mode 100644 index 0000000000..208890fe3d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json new file mode 100644 index 0000000000..5453ed3ec6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_large", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_large", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json new file mode 100644 index 0000000000..192b9920a6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_large" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json new file mode 100644 index 0000000000..eccfe83cb7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json new file mode 100644 index 0000000000..5f66417b21 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json new file mode 100644 index 0000000000..7752e9be45 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_medium", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_medium", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json new file mode 100644 index 0000000000..ee576746b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json new file mode 100644 index 0000000000..8fafbd4a86 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json new file mode 100644 index 0000000000..0042b78487 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_large" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json new file mode 100644 index 0000000000..a219c7855d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json new file mode 100644 index 0000000000..6405ebefb2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json new file mode 100644 index 0000000000..583fd0f3c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_small", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_small", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json new file mode 100644 index 0000000000..146695e299 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/slate_blank", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/slate_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json new file mode 100644 index 0000000000..727a50c807 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_0" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..accf94f2b3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_small_0" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json new file mode 100644 index 0000000000..749887313c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e20b742c26 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json new file mode 100644 index 0000000000..df037ffa4b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_blank" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json new file mode 100644 index 0000000000..c40e37f12b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json new file mode 100644 index 0000000000..adc880399e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json new file mode 100644 index 0000000000..4d0555b2c6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json new file mode 100644 index 0000000000..8d6a18fa25 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json new file mode 100644 index 0000000000..c2bf7616b8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json new file mode 100644 index 0000000000..a17de30bf5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_written" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json new file mode 100644 index 0000000000..5acb33c2cd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/spellbook", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json new file mode 100644 index 0000000000..1727f3854d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_filled", + "layer1": "hexcasting:item/cad/0_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json new file mode 100644 index 0000000000..e580e3ceb5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_sealed", + "layer1": "hexcasting:item/cad/0_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json new file mode 100644 index 0000000000..6b832d7806 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json new file mode 100644 index 0000000000..3ded667934 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_filled", + "layer1": "hexcasting:item/cad/1_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json new file mode 100644 index 0000000000..91c0ed2bc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_sealed", + "layer1": "hexcasting:item/cad/1_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json new file mode 100644 index 0000000000..2d1355b5e9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json new file mode 100644 index 0000000000..9af15dfbbb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_filled", + "layer1": "hexcasting:item/cad/2_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json new file mode 100644 index 0000000000..bd336d2d1a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_sealed", + "layer1": "hexcasting:item/cad/2_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json new file mode 100644 index 0000000000..e18eaf0d3c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json new file mode 100644 index 0000000000..6b611c62b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_filled", + "layer1": "hexcasting:item/cad/3_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json new file mode 100644 index 0000000000..25a265b6d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_sealed", + "layer1": "hexcasting:item/cad/3_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json new file mode 100644 index 0000000000..38cd5d8fc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json new file mode 100644 index 0000000000..ebccd06cef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_filled", + "layer1": "hexcasting:item/cad/4_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json new file mode 100644 index 0000000000..d281078d45 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_sealed", + "layer1": "hexcasting:item/cad/4_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json new file mode 100644 index 0000000000..2f82f7d8a2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json new file mode 100644 index 0000000000..99cc74e732 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_filled", + "layer1": "hexcasting:item/cad/5_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json new file mode 100644 index 0000000000..0a4a822a5b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_sealed", + "layer1": "hexcasting:item/cad/5_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json new file mode 100644 index 0000000000..608c5cdd24 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json new file mode 100644 index 0000000000..b47cfbac66 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_filled", + "layer1": "hexcasting:item/cad/6_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json new file mode 100644 index 0000000000..2fa15268d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_sealed", + "layer1": "hexcasting:item/cad/6_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json new file mode 100644 index 0000000000..1e7e436978 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json new file mode 100644 index 0000000000..8438b02ac0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_filled", + "layer1": "hexcasting:item/cad/7_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json new file mode 100644 index 0000000000..d91512283f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_sealed", + "layer1": "hexcasting:item/cad/7_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json new file mode 100644 index 0000000000..ea1bd514d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/acacia" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json new file mode 100644 index 0000000000..cb00188989 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/bamboo" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json new file mode 100644 index 0000000000..c56b377279 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/birch" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json new file mode 100644 index 0000000000..fa68214ae5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/crimson" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json new file mode 100644 index 0000000000..ef89b141c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/dark_oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json new file mode 100644 index 0000000000..2ecbbaa4b8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/edified" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json new file mode 100644 index 0000000000..81fc631e34 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/jungle" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json new file mode 100644 index 0000000000..1d055a8943 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mangrove" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json new file mode 100644 index 0000000000..a2a679a5b5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mindsplice" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json new file mode 100644 index 0000000000..c9a35a19c7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json new file mode 100644 index 0000000000..16e5858599 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/staff/quenched_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json new file mode 100644 index 0000000000..d34dbbfe48 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json new file mode 100644 index 0000000000..b3b4d49426 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json new file mode 100644 index 0000000000..9d34fae3ed --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json new file mode 100644 index 0000000000..61a55746b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json new file mode 100644 index 0000000000..aa60185a6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/spruce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json new file mode 100644 index 0000000000..4a157768aa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/warped" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json new file mode 100644 index 0000000000..69e448436d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json new file mode 100644 index 0000000000..45e5b99e81 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json new file mode 100644 index 0000000000..c5dd346a84 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/sub_sandwich" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json new file mode 100644 index 0000000000..4a9917224b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/thought_knot", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/thought_knot_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/thought_knot" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json new file mode 100644 index 0000000000..f5b12c99d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/thought_knot", + "layer1": "hexcasting:item/thought_knot_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json new file mode 100644 index 0000000000..19102d169b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/trinket", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/trinket_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json new file mode 100644 index 0000000000..77da0e72e5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_trinket", + "layer1": "hexcasting:item/cad/0_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json new file mode 100644 index 0000000000..4eb168d7f1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json new file mode 100644 index 0000000000..80a274ce90 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket", + "layer1": "hexcasting:item/cad/1_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json new file mode 100644 index 0000000000..f38c5e5dc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json new file mode 100644 index 0000000000..6c60bb9486 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket", + "layer1": "hexcasting:item/cad/2_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json new file mode 100644 index 0000000000..4410e1a4ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json new file mode 100644 index 0000000000..4aea4da78e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket", + "layer1": "hexcasting:item/cad/3_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json new file mode 100644 index 0000000000..87903d7d9b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json new file mode 100644 index 0000000000..9b61c263fb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket", + "layer1": "hexcasting:item/cad/4_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json new file mode 100644 index 0000000000..4cc6440a50 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json new file mode 100644 index 0000000000..fbc3567288 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket", + "layer1": "hexcasting:item/cad/5_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json new file mode 100644 index 0000000000..6cc75f387d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json new file mode 100644 index 0000000000..bdd007f345 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket", + "layer1": "hexcasting:item/cad/6_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json new file mode 100644 index 0000000000..a2f57e04cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json new file mode 100644 index 0000000000..e83c8fa4bc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket", + "layer1": "hexcasting:item/cad/7_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json new file mode 100644 index 0000000000..0b76dd8f8f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/uuid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json new file mode 100644 index 0000000000..6a28f12462 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/acacia_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json new file mode 100644 index 0000000000..c0f063051f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/bamboo_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json new file mode 100644 index 0000000000..571e454dd7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/birch_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json new file mode 100644 index 0000000000..9a663a248b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json new file mode 100644 index 0000000000..059589861d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/crimson_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json new file mode 100644 index 0000000000..31dc19c0e5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/dark_oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json new file mode 100644 index 0000000000..903e47409b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/edified_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json new file mode 100644 index 0000000000..06b8e032d0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/jungle_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json new file mode 100644 index 0000000000..0d75f169c1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mangrove_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json new file mode 100644 index 0000000000..5c469011ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mindsplice_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json new file mode 100644 index 0000000000..8903a42caf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json new file mode 100644 index 0000000000..3f3562c473 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/spruce_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json new file mode 100644 index 0000000000..62ab1990d7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/warped_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/create/tags/block/brittle.json b/Neoforge/src/generated/resources/data/create/tags/block/brittle.json new file mode 100644 index 0000000000..fb66be6093 --- /dev/null +++ b/Neoforge/src/generated/resources/data/create/tags/block/brittle.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#hexcasting:slate", + "required": false + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json b/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json new file mode 100644 index 0000000000..d936f71efc --- /dev/null +++ b/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/gems.json b/Neoforge/src/generated/resources/data/forge/tags/item/gems.json new file mode 100644 index 0000000000..6c55bdef92 --- /dev/null +++ b/Neoforge/src/generated/resources/data/forge/tags/item/gems.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json new file mode 100644 index 0000000000..158691c260 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "waste_amt": { + "conditions": { + "health_used": { + "min": 89000 + }, + "media_generated": {} + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:wasteful_cast.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:glistering_melon_slice" + }, + "title": { + "translate": "advancement.hexcasting:wasteful_cast" + } + }, + "requirements": [ + [ + "waste_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json new file mode 100644 index 0000000000..4664381e91 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "cast_amt": { + "conditions": { + "health_used": {}, + "media_generated": { + "min": 6400000 + } + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:big_cast.desc" + }, + "icon": { + "count": 1, + "id": "hexcasting:charged_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:big_cast" + } + }, + "requirements": [ + [ + "cast_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json new file mode 100644 index 0000000000..66694b8389 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json @@ -0,0 +1,36 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "has_creative_unlocker": { + "conditions": { + "items": [ + { + "items": "hexcasting:creative_unlocker" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "announce_to_chat": false, + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:creative_unlocker.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:creative_unlocker" + }, + "title": { + "translate": "advancement.hexcasting:creative_unlocker" + } + }, + "requirements": [ + [ + "has_creative_unlocker" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json new file mode 100644 index 0000000000..6beb493204 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json @@ -0,0 +1,38 @@ +{ + "parent": "hexcasting:opened_eyes", + "criteria": { + "health_used": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:enlightenment.desc" + }, + "frame": "challenge", + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:music_disc_11" + }, + "title": { + "translate": "advancement.hexcasting:enlightenment" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json new file mode 100644 index 0000000000..42c9fd8c5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json @@ -0,0 +1,32 @@ +{ + "criteria": { + "used_item": { + "conditions": { + "item": { + "items": "hexcasting:lore_fragment" + } + }, + "trigger": "minecraft:consume_item" + } + }, + "display": { + "background": "hexcasting:textures/block/slate_block.png", + "description": { + "translate": "advancement.hexcasting:lore.desc" + }, + "frame": "goal", + "icon": { + "count": 1, + "id": "hexcasting:akashic_ligature" + }, + "title": { + "translate": "advancement.hexcasting:lore" + } + }, + "requirements": [ + [ + "used_item" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json new file mode 100644 index 0000000000..314c3fa628 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json new file mode 100644 index 0000000000..6f3e2b9d20 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json new file mode 100644 index 0000000000..2147c12792 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom3" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json new file mode 100644 index 0000000000..1374bfcca4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom4" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json new file mode 100644 index 0000000000..06c329a939 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom5" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json new file mode 100644 index 0000000000..9d2183c268 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json new file mode 100644 index 0000000000..4ac3cadb4f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json new file mode 100644 index 0000000000..abef5eb653 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/inventory" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json new file mode 100644 index 0000000000..89583b9134 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json @@ -0,0 +1,33 @@ +{ + "parent": "hexcasting:y_u_no_cast_angy", + "criteria": { + "health_used": { + "conditions": { + "health_used": {}, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.0 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:opened_eyes.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:ender_eye" + }, + "title": { + "translate": "advancement.hexcasting:opened_eyes" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json new file mode 100644 index 0000000000..d36fd4dc3b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_record" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_record" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..18f9ea380f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:budding_amethyst" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:budding_amethyst" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..31d9085f82 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_storedplayer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_storedplayer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json new file mode 100644 index 0000000000..96746726ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_packing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_packing" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..ff10efd290 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_unpacking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_unpacking" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json new file mode 100644 index 0000000000..a5ab663568 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..ab1194da4a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json new file mode 100644 index 0000000000..31556a4ca8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json new file mode 100644 index 0000000000..1d09e6fdf8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence_gate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence_gate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json new file mode 100644 index 0000000000..ab66016e10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_panel" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json new file mode 100644 index 0000000000..f031431d00 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_logs" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_planks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json new file mode 100644 index 0000000000..317bd1fd11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_slab" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json new file mode 100644 index 0000000000..069989ca28 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_stairs" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json new file mode 100644 index 0000000000..5179827061 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_tile" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_tile" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json new file mode 100644 index 0000000000..f0aaf4b1fd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_wood" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json new file mode 100644 index 0000000000..d676daa7f7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json new file mode 100644 index 0000000000..770d62ab2b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json new file mode 100644 index 0000000000..b2f96c2797 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block_from_slates" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block_from_slates" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..3c2f410ce6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..4d048fc250 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:stripped_edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stripped_edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stripped_edified_wood" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..6ae4bdbbb6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper_lantern" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ageing_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ageing_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json new file mode 100644 index 0000000000..91debb7ca5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_sconce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_sconce" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f36c1abfc2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:ancient_scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json new file mode 100644 index 0000000000..1bff0c5ff6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json new file mode 100644 index 0000000000..2dc4651527 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_medium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_medium" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json new file mode 100644 index 0000000000..63884d313e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json new file mode 100644 index 0000000000..2e68c56849 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json new file mode 100644 index 0000000000..551899a3a3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json new file mode 100644 index 0000000000..bb64c267e5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:sub_sandwich" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:sub_sandwich" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..b032476ae7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/charged" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/charged" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..299d8a4550 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/dust" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/dust" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..d9f9dfbb25 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/shard" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json new file mode 100644 index 0000000000..e04ea0f7b0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:default_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:default_colorizer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json new file mode 100644 index 0000000000..486da412cd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_black" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_black" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json new file mode 100644 index 0000000000..c23b00add5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_blue" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json new file mode 100644 index 0000000000..daf49d8674 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_brown" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_brown" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json new file mode 100644 index 0000000000..bc159a4f91 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_cyan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_cyan" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json new file mode 100644 index 0000000000..959c3b871a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_gray" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json new file mode 100644 index 0000000000..ae496bdb93 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_green" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_green" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..9e660ad5de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_blue" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..b2b51d665b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_gray" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json new file mode 100644 index 0000000000..b21321754b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_lime" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_lime" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json new file mode 100644 index 0000000000..38097fe636 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_magenta" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_magenta" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json new file mode 100644 index 0000000000..a5e2054cd0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_orange" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_orange" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json new file mode 100644 index 0000000000..868366c0a4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_pink" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_pink" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json new file mode 100644 index 0000000000..b9d4282404 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_purple" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_purple" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json new file mode 100644 index 0000000000..515062d384 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_red" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_red" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json new file mode 100644 index 0000000000..3fbaf1ba20 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_white" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_white" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json new file mode 100644 index 0000000000..e707bc9937 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_yellow" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_yellow" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json new file mode 100644 index 0000000000..e07c954cd3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_agender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_agender" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json new file mode 100644 index 0000000000..8413c66774 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aroace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aroace" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..37604e5939 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aromantic" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aromantic" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json new file mode 100644 index 0000000000..74df9afba7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_asexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_asexual" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..a3e18ad420 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_bisexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_bisexual" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..e131fc73f1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demiboy" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demiboy" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..a164b59ce6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demigirl" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demigirl" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json new file mode 100644 index 0000000000..59c4f8fdeb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_gay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_gay" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..5c3233fa98 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderfluid" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderfluid" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..fd6f1355ef --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderqueer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderqueer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json new file mode 100644 index 0000000000..091329fe3f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_intersex" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_intersex" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..3d4dec1d10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_lesbian" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_lesbian" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..83c4964af9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_nonbinary" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_nonbinary" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json new file mode 100644 index 0000000000..89512b05e1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_plural" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_plural" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json new file mode 100644 index 0000000000..70dced6396 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_transgender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_transgender" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json new file mode 100644 index 0000000000..fbcdbfebf4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:uuid_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:uuid_colorizer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json new file mode 100644 index 0000000000..44a4110650 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json new file mode 100644 index 0000000000..e00a4fdf00 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix/empty" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json new file mode 100644 index 0000000000..b6cd73817c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_button" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_button" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json new file mode 100644 index 0000000000..72dce77364 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_door" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_door" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json new file mode 100644 index 0000000000..f207372eeb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_pressure_plate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_pressure_plate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json new file mode 100644 index 0000000000..be0fadb15b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_trapdoor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_trapdoor" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json new file mode 100644 index 0000000000..0b4aa3256c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus/empty" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json new file mode 100644 index 0000000000..b1cb841b3e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:abacus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:abacus" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json new file mode 100644 index 0000000000..221cf418c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:artifact" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:artifact" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json new file mode 100644 index 0000000000..5489ea0467 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:cypher" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:cypher" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json new file mode 100644 index 0000000000..4e19de9e5e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json new file mode 100644 index 0000000000..f67d8502aa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus_rotated" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus_rotated" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json new file mode 100644 index 0000000000..6a24d2b333 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:jeweler_hammer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:jeweler_hammer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json new file mode 100644 index 0000000000..3411cb2187 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:lens" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json new file mode 100644 index 0000000000..ef5a492652 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -0,0 +1,43 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_chorus": { + "conditions": { + "items": [ + { + "items": "minecraft:chorus_fruit" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_focus": { + "conditions": { + "items": [ + { + "items": "hexcasting:focus" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:spellbook" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_focus", + "has_chorus" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:spellbook" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json new file mode 100644 index 0000000000..c1e018b4ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/acacia" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/acacia" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json new file mode 100644 index 0000000000..19094ad2fe --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/bamboo" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/bamboo" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json new file mode 100644 index 0000000000..ca6c180cfa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/birch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/birch" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json new file mode 100644 index 0000000000..38107a9b52 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/cherry" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/cherry" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json new file mode 100644 index 0000000000..da68b592c5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/crimson" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/crimson" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json new file mode 100644 index 0000000000..da9937e87d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/dark_oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/dark_oak" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json new file mode 100644 index 0000000000..99d19ed3bf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/edified" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/edified" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json new file mode 100644 index 0000000000..80fe7c43f6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/jungle" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/jungle" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json new file mode 100644 index 0000000000..0064814593 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mangrove" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mangrove" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json new file mode 100644 index 0000000000..adb60836c1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mindsplice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mindsplice" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json new file mode 100644 index 0000000000..d11084b78d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/oak" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json new file mode 100644 index 0000000000..1ce63b78e3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/quenched" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/quenched" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json new file mode 100644 index 0000000000..cbad54cf88 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/spruce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/spruce" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json new file mode 100644 index 0000000000..ffff5199c6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/warped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/warped" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json new file mode 100644 index 0000000000..f50c1673fa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:thought_knot" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:thought_knot" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json new file mode 100644 index 0000000000..17c0d69b1f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:trinket" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:trinket" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json new file mode 100644 index 0000000000..1b2763aed8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json @@ -0,0 +1,34 @@ +{ + "criteria": { + "has_charged_amethyst": { + "conditions": { + "items": [ + { + "items": "#hexcasting:grants_root_advancement" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:root.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:budding_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:root" + } + }, + "requirements": [ + [ + "has_charged_amethyst" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json new file mode 100644 index 0000000000..00a5641e4d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json @@ -0,0 +1,26 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "did_the_thing": { + "trigger": "hexcasting:fail_to_cast_great_spell" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:blaze_powder" + }, + "title": { + "translate": "advancement.hexcasting:y_u_no_cast_angy" + } + }, + "requirements": [ + [ + "did_the_thing" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json b/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json new file mode 100644 index 0000000000..012582c4b2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json @@ -0,0 +1,5 @@ +{ + "exhaustion": 0.0, + "message_id": "hexcasting.overcast", + "scaling": "when_caused_by_living_non_player" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json new file mode 100644 index 0000000000..70af09ea61 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:amethyst_cluster", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:blocks/amethyst_cluster" + } + ], + "shardDelta": -0.5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..2cde006e3e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..79ede35c14 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..f51d2dabf0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..78250990ed --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..b9e7041dbc --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..5cb215e05e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json new file mode 100644 index 0000000000..6dfe6d03d3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_corridor" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..c636a2f73a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..215f625f7d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..ad1b0666d8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f55d8f4cc0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json new file mode 100644 index 0000000000..3aaf4b8498 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_desert_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json new file mode 100644 index 0000000000..93d27d6661 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_plains_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json new file mode 100644 index 0000000000..bb224944b7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_savanna_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json new file mode 100644 index 0000000000..ec4f567a6e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_snowy_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json new file mode 100644 index 0000000000..d2132c79bf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_taiga_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..be9d6b6d12 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..27d1e1ba46 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..d4d94d6652 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json new file mode 100644 index 0000000000..17372d9896 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_other" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json new file mode 100644 index 0000000000..ff8851c233 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..b91f49fb8a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json new file mode 100644 index 0000000000..f5371dd519 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/end_city_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..c1bf948ade --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..68725eddce --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..b06f4d95a6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json new file mode 100644 index 0000000000..3c7b528cda --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/shipwreck_map" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..141eebbe09 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f08c93cb45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json new file mode 100644 index 0000000000..a59db105dd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_cartographer" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..cc97ecc7c2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json new file mode 100644 index 0000000000..78a36f62ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_bookshelf" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_bookshelf" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json new file mode 100644 index 0000000000..02be275bc1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_ligature" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_ligature" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json new file mode 100644 index 0000000000..5c93f81681 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_record" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_record" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json new file mode 100644 index 0000000000..4c60a77364 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json new file mode 100644 index 0000000000..3d39f82987 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json new file mode 100644 index 0000000000..7c054a0aab --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_dust_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json new file mode 100644 index 0000000000..911c281497 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json new file mode 100644 index 0000000000..2eeb112461 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json new file mode 100644 index 0000000000..e2c38fe09e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_sconce" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_sconce" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json new file mode 100644 index 0000000000..13010296ca --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..2bb2887920 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f2ea006a03 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json new file mode 100644 index 0000000000..d2bfc7c956 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:aventurine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json new file mode 100644 index 0000000000..88f319d753 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:citrine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json new file mode 100644 index 0000000000..7510be752b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/boolean" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/boolean" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json new file mode 100644 index 0000000000..056282de33 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json new file mode 100644 index 0000000000..b130eb19de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/redstone" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json new file mode 100644 index 0000000000..a24172124e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_button" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_button" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json new file mode 100644 index 0000000000..942a65484f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "block": "hexcasting:edified_door", + "condition": "minecraft:block_state_property", + "properties": { + "half": "lower" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_door" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_door" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json new file mode 100644 index 0000000000..f45eea22be --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json new file mode 100644 index 0000000000..01cbf2a5e1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence_gate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence_gate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json new file mode 100644 index 0000000000..396a3fcb45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json new file mode 100644 index 0000000000..d6c0759bfa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_amethyst" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_amethyst" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json new file mode 100644 index 0000000000..31892f2177 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_aventurine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_aventurine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json new file mode 100644 index 0000000000..21ac1cd0fb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_citrine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_citrine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json new file mode 100644 index 0000000000..f9c2c33343 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_purple" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_purple" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json new file mode 100644 index 0000000000..83cb1f1b59 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_panel" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_panel" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json new file mode 100644 index 0000000000..5f1b5f7280 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_planks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_planks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json new file mode 100644 index 0000000000..d733b30a49 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_pressure_plate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_pressure_plate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json new file mode 100644 index 0000000000..0bdc00f6b3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json @@ -0,0 +1,34 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_slab" + } + ], + "functions": [ + { + "add": false, + "conditions": [ + { + "block": "hexcasting:edified_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ], + "count": 2.0, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_slab" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json new file mode 100644 index 0000000000..7cb6566434 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_stairs" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_stairs" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json new file mode 100644 index 0000000000..dbc6bd1426 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_tile" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_tile" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json new file mode 100644 index 0000000000..f76ea0437f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_trapdoor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_trapdoor" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json new file mode 100644 index 0000000000..2e1faee977 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json new file mode 100644 index 0000000000..67fe1185ac --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json new file mode 100644 index 0000000000..87f6f0ef09 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/look" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/look" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json new file mode 100644 index 0000000000..1635ee4207 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/redstone" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json new file mode 100644 index 0000000000..37f1e9df10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/rightclick" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/rightclick" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json new file mode 100644 index 0000000000..09fe8b6fd3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -0,0 +1,69 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ], + "name": "hexcasting:quenched_allay" + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 2.0 + }, + "function": "minecraft:set_count" + }, + { + "add": true, + "conditions": [ + { + "chances": [ + 0.25, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "name": "hexcasting:quenched_allay_shard" + } + ] + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..eb1a87b224 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..879089b6d4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..0c81157382 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json new file mode 100644 index 0000000000..8c3d628108 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json new file mode 100644 index 0000000000..ccea471c66 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json new file mode 100644 index 0000000000..eeb8f5c955 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" + ], + "source": "block_entity" + } + ], + "name": "hexcasting:slate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6d9ea8d1a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..6f7cfb5825 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..96dd26f7fb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e91ebad3ce --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json new file mode 100644 index 0000000000..d136fe7460 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json new file mode 100644 index 0000000000..d42593f8d5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json new file mode 100644 index 0000000000..f77a608dec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json new file mode 100644 index 0000000000..060b60ebf9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json new file mode 100644 index 0000000000..81cda1a13a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json new file mode 100644 index 0000000000..7dab40f3a1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..60b009f032 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json new file mode 100644 index 0000000000..e87bc89af2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -0,0 +1,211 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + }, + { + "chances": [ + 0.25, + 0.35, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + }, + { + "chance": 0.125, + "condition": "minecraft:random_chance" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:inject/amethyst_cluster" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json new file mode 100644 index 0000000000..76d393b033 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "minecraft:planks" + } + }, + "pattern": [ + "WAW", + "SAS", + "WAW" + ], + "result": { + "count": 1, + "id": "hexcasting:abacus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..54de4e69be --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json new file mode 100644 index 0000000000..055ac48308 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "C": { + "item": "minecraft:book" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "result": { + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json new file mode 100644 index 0000000000..bbcc3f83e7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "1": { + "item": "hexcasting:amethyst_dust" + }, + "2": { + "item": "minecraft:amethyst_shard" + }, + "3": { + "item": "hexcasting:charged_amethyst" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "123", + "LPL" + ], + "result": { + "count": 4, + "id": "hexcasting:akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json new file mode 100644 index 0000000000..1da337229f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "X": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "XX", + "XX" + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..db42cb3711 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust_block" + } + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json new file mode 100644 index 0000000000..1ece2856f0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "tag": "c:ingots/copper" + }, + "T": { + "item": "hexcasting:charged_amethyst" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_sconce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json new file mode 100644 index 0000000000..300139c437 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:amethyst_block" + }, + "D": { + "item": "minecraft:amethyst_block" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json new file mode 100644 index 0000000000..33db9b82c9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..d99d9ba91b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:ancient_scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json new file mode 100644 index 0000000000..a03e30a2a8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "D": { + "tag": "minecraft:creeper_drop_music_discs" + }, + "F": { + "tag": "c:ingots/gold" + } + }, + "pattern": [ + " F ", + "FAF", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..0532b2e5ed --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 3 + }, + "result": { + "Name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..5e97ada05f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:shepherd" + }, + "result": { + "Name": "hexcasting:directrix/boolean", + "Properties": { + "energized": "false", + "facing": "north", + "state": "neither" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..afb314d043 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:mason" + }, + "result": { + "Name": "hexcasting:directrix/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "false" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json new file mode 100644 index 0000000000..7d77364f78 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:fletcher" + }, + "result": { + "Name": "hexcasting:impetus/look", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..02fbae2538 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:toolsmith" + }, + "result": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..f79dca1d11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:cleric" + }, + "result": { + "Name": "hexcasting:impetus/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "true" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json new file mode 100644 index 0000000000..076b4e0745 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 100000, + "entityIn": { + "type": "hexcasting:entity_type", + "entityType": "minecraft:allay" + }, + "result": { + "Name": "hexcasting:quenched_allay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json new file mode 100644 index 0000000000..80e1837536 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/copper" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..4d9e9902e8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:charged_amethyst" + } + ], + "result": { + "count": 4, + "id": "hexcasting:charged_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..5023760773 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:amethyst_dust" + } + ], + "result": { + "count": 31, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..e441d9bf5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "minecraft:amethyst_shard" + } + ], + "result": { + "count": 7, + "id": "minecraft:amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json new file mode 100644 index 0000000000..b61e7ef20a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:default_colorizer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json new file mode 100644 index 0000000000..986fa97d99 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "C": { + "item": "minecraft:comparator" + }, + "O": { + "item": "minecraft:observer" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "CSS", + "OAO", + "SSC" + ], + "result": { + "count": 1, + "id": "hexcasting:directrix/empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json new file mode 100644 index 0000000000..43dcd86862 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:black_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json new file mode 100644 index 0000000000..b9cd3b99c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json new file mode 100644 index 0000000000..f02b87049c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:brown_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json new file mode 100644 index 0000000000..93380132c6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:cyan_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json new file mode 100644 index 0000000000..c803427d5a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json new file mode 100644 index 0000000000..e592b36cca --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:green_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..d8eb9b5986 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..e6efc2af9a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json new file mode 100644 index 0000000000..645db81176 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:lime_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json new file mode 100644 index 0000000000..9476c0a098 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:magenta_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json new file mode 100644 index 0000000000..f6f815b95f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:orange_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json new file mode 100644 index 0000000000..065db19c23 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:pink_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json new file mode 100644 index 0000000000..85dab6119e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:purple_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json new file mode 100644 index 0000000000..8acba0fc1a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:red_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json new file mode 100644 index 0000000000..d76ee9ba69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:white_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json new file mode 100644 index 0000000000..35ffbdd8df --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:yellow_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json new file mode 100644 index 0000000000..28edc09f6d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_focus", + "category": "misc" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json new file mode 100644 index 0000000000..5bf703566d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_spellbook", + "category": "misc" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json new file mode 100644 index 0000000000..10ad25b4aa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "redstone", + "ingredients": [ + { + "tag": "hexcasting:edified_planks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:edified_button" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json new file mode 100644 index 0000000000..6ff2941615 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW", + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_door" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json new file mode 100644 index 0000000000..f1a7c7ec45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WSW", + "WSW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_fence" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json new file mode 100644 index 0000000000..a38d45ca38 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "SWS", + "SWS" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_fence_gate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json new file mode 100644 index 0000000000..0baf420f31 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "tag": "hexcasting:edified_planks" + }, + "D": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:edified_panel" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json new file mode 100644 index 0000000000..7ea641db71 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "hexcasting:edified_logs" + } + ], + "result": { + "count": 4, + "id": "hexcasting:edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json new file mode 100644 index 0000000000..fb80df82d1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json new file mode 100644 index 0000000000..efda8df52a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_slab" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json new file mode 100644 index 0000000000..ca2e03f9c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "W ", + "WW ", + "WWW" + ], + "result": { + "count": 4, + "id": "hexcasting:edified_stairs" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json new file mode 100644 index 0000000000..bfca8c3437 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW ", + "W W", + " WW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_tile" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json new file mode 100644 index 0000000000..89928fcc73 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW", + "WWW" + ], + "result": { + "count": 2, + "id": "hexcasting:edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json new file mode 100644 index 0000000000..4e95e0bdc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_wood" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json new file mode 100644 index 0000000000..ff88244378 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GLG", + "PAP", + "GLG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json new file mode 100644 index 0000000000..62aba7f62e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GPG", + "LAL", + "GPG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json new file mode 100644 index 0000000000..b5d3b9fd5c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:iron_bars" + }, + "P": { + "item": "minecraft:purpur_block" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "PSS", + "BAB", + "SSP" + ], + "result": { + "count": 1, + "id": "hexcasting:impetus/empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json new file mode 100644 index 0000000000..fef55bcb4b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "I": { + "tag": "c:ingots/iron" + }, + "N": { + "tag": "c:nuggets/iron" + }, + "S": [ + { + "item": "minecraft:stick" + }, + { + "tag": "forge:rods/wooden" + } + ] + }, + "pattern": [ + "IAN", + " S ", + " S " + ], + "result": { + "count": 1, + "id": "hexcasting:jeweler_hammer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json new file mode 100644 index 0000000000..d7e33ac36b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "item": "minecraft:glass" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:lens" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json new file mode 100644 index 0000000000..d5401c0952 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json new file mode 100644 index 0000000000..25c32f412c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat_seeds" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..ab923e9b61 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:arrow" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json new file mode 100644 index 0000000000..c41a3223de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:bread" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..157dff5b64 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..c79d6fd805 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_iron" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..4a87fb83dd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_copper" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json new file mode 100644 index 0000000000..3922bf5fa1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:stone_brick_wall" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..788be0d074 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:water_bucket" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..db56478852 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass_bottle" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json new file mode 100644 index 0000000000..0cf8605f6e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:azalea" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..60faeb98cb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:honeycomb" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..1592908ece --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:moss_block" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json new file mode 100644 index 0000000000..662aaf38fc --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:repeater" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json new file mode 100644 index 0000000000..cce2b91ea8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:egg" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json new file mode 100644 index 0000000000..cf7a4fcfb1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "PPA", + "PPP", + "PPP" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json new file mode 100644 index 0000000000..85b2a98f34 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "PP ", + "PP " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json new file mode 100644 index 0000000000..1feb96a530 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:paper" + }, + "D": { + "item": "minecraft:paper" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json new file mode 100644 index 0000000000..5434f4c7f1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json new file mode 100644 index 0000000000..c64a3e544a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "P " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json new file mode 100644 index 0000000000..eb718972c2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "S": { + "item": "minecraft:deepslate" + } + }, + "pattern": [ + " A ", + "SSS" + ], + "result": { + "count": 6, + "id": "hexcasting:slate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json new file mode 100644 index 0000000000..975fea26a0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:deepslate" + }, + "D": { + "item": "minecraft:deepslate" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json new file mode 100644 index 0000000000..92bf412fdf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "hexcasting:slate" + } + }, + "pattern": [ + "S", + "S" + ], + "result": { + "count": 1, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json new file mode 100644 index 0000000000..d9e9250926 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:writable_book" + }, + "F": { + "item": "minecraft:chorus_fruit" + }, + "N": { + "tag": "c:nuggets/gold" + } + }, + "pattern": [ + "NBA", + "NFA", + "NBA" + ], + "result": { + "count": 1, + "id": "hexcasting:spellbook" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json new file mode 100644 index 0000000000..a5e01a9c9a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:acacia_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/acacia" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json new file mode 100644 index 0000000000..8c648a860c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:bamboo_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/bamboo" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json new file mode 100644 index 0000000000..2cee68c976 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:birch_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/birch" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json new file mode 100644 index 0000000000..fb19b26271 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:cherry_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json new file mode 100644 index 0000000000..6f8b4dd09e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:crimson_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/crimson" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json new file mode 100644 index 0000000000..b4a9aea823 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:dark_oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/dark_oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json new file mode 100644 index 0000000000..29378f8085 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:edified_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/edified" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json new file mode 100644 index 0000000000..a3b382cf11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:jungle_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/jungle" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json new file mode 100644 index 0000000000..2ad01c0d69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:mangrove_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mangrove" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json new file mode 100644 index 0000000000..41c9e8abb0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:brainswept_circle_components" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mindsplice" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json new file mode 100644 index 0000000000..75d6d9daab --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json new file mode 100644 index 0000000000..91fd1fc452 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:quenched_allay_shard" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/quenched" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json new file mode 100644 index 0000000000..0ab7166a60 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:spruce_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/spruce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json new file mode 100644 index 0000000000..8a71b96aaf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:warped_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/warped" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..7eb40a9ada --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "item": "minecraft:amethyst_block" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json new file mode 100644 index 0000000000..0ccb5ae8e2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:stripped_edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:stripped_edified_wood" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json new file mode 100644 index 0000000000..82a511fde4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "B": { + "item": "minecraft:bread" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + " SA", + " C ", + " B " + ], + "result": { + "count": 1, + "id": "hexcasting:sub_sandwich" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json new file mode 100644 index 0000000000..d89ad83310 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust" + }, + { + "item": "minecraft:string" + } + ], + "result": { + "count": 1, + "id": "hexcasting:thought_knot" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json new file mode 100644 index 0000000000..f0c905012a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/iron" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json new file mode 100644 index 0000000000..235a2aff68 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:uuid_colorizer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json new file mode 100644 index 0000000000..7fc52a816b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:conjured_block", + "hexcasting:conjured_light" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json new file mode 100644 index 0000000000..094771ef74 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json @@ -0,0 +1,5 @@ +{ + "values": [ + "#minecraft:needs_diamond_tool" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json new file mode 100644 index 0000000000..0f2bcab34f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json @@ -0,0 +1,8 @@ +{ + "values": [ + "minecraft:kelp", + "minecraft:kelp_plant", + "minecraft:seagrass", + "minecraft:tall_seagrass" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json new file mode 100644 index 0000000000..1f7070a707 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:amethyst_dust", + "minecraft:amethyst_shard", + "hexcasting:charged_amethyst", + "hexcasting:creative_unlocker" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json new file mode 100644 index 0000000000..52ac4c0c96 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:glass_bottle" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json new file mode 100644 index 0000000000..674a370049 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:honeycomb" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json new file mode 100644 index 0000000000..29f4595c62 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:staff/edified", + "hexcasting:staff/oak", + "hexcasting:staff/spruce", + "hexcasting:staff/birch", + "hexcasting:staff/jungle", + "hexcasting:staff/acacia", + "hexcasting:staff/dark_oak", + "hexcasting:staff/crimson", + "hexcasting:staff/warped", + "hexcasting:staff/mangrove", + "hexcasting:staff/cherry", + "hexcasting:staff/bamboo", + "hexcasting:staff/quenched", + "hexcasting:staff/mindsplice" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json new file mode 100644 index 0000000000..7a23dc1ec1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:conjured_light", + "hexcasting:conjured_block", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_sconce" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json new file mode 100644 index 0000000000..269de59e0a --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json new file mode 100644 index 0000000000..0d6037e186 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -0,0 +1,25 @@ +{ + "values": [ + "hexcasting:akashic_record", + "hexcasting:akashic_bookshelf", + "hexcasting:akashic_ligature", + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood", + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile", + "hexcasting:edified_door", + "hexcasting:edified_trapdoor", + "hexcasting:edified_slab", + "hexcasting:edified_button", + "hexcasting:edified_stairs", + "hexcasting:edified_fence", + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000000..a8b1c2eb67 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,30 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_tiles", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_pillar", + "hexcasting:slate", + "hexcasting:directrix/empty", + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean", + "hexcasting:impetus/empty", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/look", + "hexcasting:impetus/redstone", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_pillar", + "hexcasting:slate_amethyst_tiles", + "hexcasting:slate_amethyst_bricks", + "hexcasting:slate_amethyst_bricks_small", + "hexcasting:slate_amethyst_pillar", + "hexcasting:amethyst_sconce", + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_tiles", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000000..02d08df2b3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust_block" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json new file mode 100644 index 0000000000..117722b2be --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:edified_fence", + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json b/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json new file mode 100644 index 0000000000..6699a7a66e --- /dev/null +++ b/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json @@ -0,0 +1,37 @@ +{ + "entries": [ + "hexcasting:scroll/minecraft/chests/simple_dungeon", + "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", + "hexcasting:scroll/minecraft/chests/bastion_other", + "hexcasting:scroll/minecraft/chests/nether_bridge", + "hexcasting:scroll/minecraft/chests/jungle_temple", + "hexcasting:scroll/minecraft/chests/desert_pyramid", + "hexcasting:scroll/minecraft/chests/village/village_cartographer", + "hexcasting:scroll/minecraft/chests/shipwreck_map", + "hexcasting:scroll/minecraft/chests/bastion_treasure", + "hexcasting:scroll/minecraft/chests/end_city_treasure", + "hexcasting:scroll/minecraft/chests/ancient_city", + "hexcasting:scroll/minecraft/chests/pillager_outpost", + "hexcasting:scroll/minecraft/chests/woodland_mansion", + "hexcasting:scroll/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/simple_dungeon", + "hexcasting:lore/minecraft/chests/abandoned_mineshaft", + "hexcasting:lore/minecraft/chests/pillager_outpost", + "hexcasting:lore/minecraft/chests/woodland_mansion", + "hexcasting:lore/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/village/village_desert_house", + "hexcasting:lore/minecraft/chests/village/village_plains_house", + "hexcasting:lore/minecraft/chests/village/village_savanna_house", + "hexcasting:lore/minecraft/chests/village/village_snowy_house", + "hexcasting:lore/minecraft/chests/village/village_taiga_house", + "hexcasting:cypher/minecraft/chests/simple_dungeon", + "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", + "hexcasting:cypher/minecraft/chests/stronghold_corridor", + "hexcasting:cypher/minecraft/chests/jungle_temple", + "hexcasting:cypher/minecraft/chests/desert_pyramid", + "hexcasting:cypher/minecraft/chests/ancient_city", + "hexcasting:cypher/minecraft/chests/nether_bridge", + "hexcasting:amethyst_cluster" + ], + "replace": false +} \ No newline at end of file diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java index 0598ab7110..d50c7aa784 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexDataGenerators.java @@ -46,8 +46,8 @@ public static void generateData(GatherDataEvent ev) { //if (System.getProperty("hexcasting.xplat_datagen") != null) { configureXplatDatagen(ev); //} - //if (System.getProperty("hexcasting.forge_datagen") != null) { - configureForgeDatagen(ev); + //if (System.getProperty("hexcasting.neoforge_datagen") != null) { + configureNeoforgeDatagen(ev); //} } @@ -80,8 +80,8 @@ private static void configureXplatDatagen(GatherDataEvent ev) { } @SuppressWarnings({"DataFlowIssue", "UnreachableCode"}) - private static void configureForgeDatagen(GatherDataEvent ev) { - HexAPI.LOGGER.info("Starting Forge-specific datagen"); + private static void configureNeoforgeDatagen(GatherDataEvent ev) { + HexAPI.LOGGER.info("Starting NeoForge-specific datagen"); DataGenerator gen = ev.getGenerator(); var output = gen.getPackOutput(); diff --git a/build.gradle b/build.gradle index 627274291d..c0eb6812a5 100644 --- a/build.gradle +++ b/build.gradle @@ -93,7 +93,6 @@ subprojects { tasks.withType(GenerateModuleMetadata).configureEach { enabled = false } - } allprojects { @@ -124,6 +123,6 @@ compileTestKotlin { tasks.register("runAllDatagen") { dependsOn ":Neoforge:runXplatDatagen" - dependsOn ":Neoforge:runForgeDatagen" + dependsOn ":Neoforge:runDatagen" dependsOn ":Fabric:runDatagen" } From cf1a3aa19387a4c15827eb6e62c2a7133455a0bd Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 10 Dec 2025 15:56:49 -0600 Subject: [PATCH 22/51] Fixed crash with impeti breaking (also, fixed failure of item stacks visualizing on impeti scrying sight mishap) Fixed slate rendering both as a block entity and an item stack. --- .../circles/BlockEntityAbstractImpetus.java | 8 ++-- .../blocks/circles/BlockEntitySlate.java | 19 ++++++++ .../common/items/storage/ItemSlate.java | 44 ++++-------------- .../hexcasting/lang/en_us.flatten.json5 | 2 +- .../hexcasting/textures/block/slate.png | Bin 0 -> 320 bytes .../architecture_extensions/slate_block.json | 2 +- Fabric/build.gradle | 4 +- .../hexcasting/fabric/FabricHexInitializer.kt | 1 - Neoforge/build.gradle | 4 ++ 9 files changed, 38 insertions(+), 46 deletions(-) create mode 100644 Common/src/main/resources/assets/hexcasting/textures/block/slate.png diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index c37ed07f58..ec9a2d4a6c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -296,9 +296,7 @@ protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { if (this.displayMsg != null && this.displayItem != null) { tag.putString(TAG_ERROR_MSG, Component.Serializer.toJson(this.displayMsg, registries)); - var itemTag = new CompoundTag(); - this.displayItem.save(registries, itemTag); - tag.put(TAG_ERROR_DISPLAY, itemTag); + tag.put(TAG_ERROR_DISPLAY, this.displayItem.save(registries, new CompoundTag())); } if (this.pigment != null) tag.put(TAG_PIGMENT, FrozenPigment.CODEC.encodeStart(NbtOps.INSTANCE, pigment).getOrThrow()); @@ -319,7 +317,7 @@ protected void loadModData(CompoundTag tag, HolderLookup.Provider registries) { if (tag.contains(TAG_ERROR_MSG, Tag.TAG_STRING) && tag.contains(TAG_ERROR_DISPLAY, Tag.TAG_COMPOUND)) { var msg = Component.Serializer.fromJson(tag.getString(TAG_ERROR_MSG), registries); - var display = ItemStack.parseOptional(registries, tag); + var display = ItemStack.parseOptional(registries, tag.getCompound(TAG_ERROR_DISPLAY)); this.displayMsg = msg; this.displayItem = display; } else { @@ -376,7 +374,7 @@ protected int semitoneFromScale(int note) { // this is a good use of my time private static final int[] MAJOR_SCALE = {0, 2, 4, 5, 7, 9, 11, 12}; - private static final int[] MINOR_SCALE = {0, 2, 3, 5, 7, 8, 11, 12}; + private static final int[] MINOR_SCALE = {0, 2, 3, 5, 7, 8, 10, 12}; private static final int[] DORIAN_SCALE = {0, 2, 3, 5, 7, 9, 10, 12}; private static final int[] MIXOLYDIAN_SCALE = {0, 2, 4, 5, 7, 9, 10, 12}; private static final int[] BLUES_SCALE = {0, 3, 5, 6, 7, 10, 12}; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java index acb0c4ca4b..1bda8d2a48 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEntitySlate.java @@ -3,8 +3,10 @@ import at.petrak.hexcasting.api.block.HexBlockEntity; import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.common.lib.HexBlockEntities; +import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.core.BlockPos; import net.minecraft.core.HolderLookup; +import net.minecraft.core.component.DataComponentMap; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; @@ -21,6 +23,23 @@ public BlockEntitySlate(BlockPos pos, BlockState state) { super(HexBlockEntities.SLATE_TILE, pos, state); } + @Override + protected void collectImplicitComponents(DataComponentMap.Builder components) { + super.collectImplicitComponents(components); + if (this.pattern != null) { + components.set(HexDataComponents.PATTERN, this.pattern); + } + } + + @Override + protected void applyImplicitComponents(DataComponentInput componentInput) { + super.applyImplicitComponents(componentInput); + var pat = componentInput.get(HexDataComponents.PATTERN); + if (pat != null) { + this.pattern = pat; + } + } + @Override protected void saveModData(CompoundTag tag, HolderLookup.Provider registries) { if (this.pattern != null) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java index e01858f660..69d8a4078c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java @@ -9,6 +9,7 @@ import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; import at.petrak.hexcasting.common.blocks.circles.BlockEntitySlate; +import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.interop.inline.InlinePatternData; @@ -49,13 +50,7 @@ public Component getName(ItemStack pStack) { } public static Optional getPattern(ItemStack stack){ - var bet = stack.get(DataComponents.BLOCK_ENTITY_DATA); - - if (bet != null && bet.contains(BlockEntitySlate.TAG_PATTERN)) { - var pattern = bet.read(HexPattern.CODEC.fieldOf(BlockEntitySlate.TAG_PATTERN)).result().orElse(null); - return Optional.ofNullable(pattern); - } - return Optional.empty(); + return Optional.ofNullable(stack.get(HexDataComponents.PATTERN)); } public static boolean hasPattern(ItemStack stack) { @@ -65,7 +60,7 @@ public static boolean hasPattern(ItemStack stack) { @SoftImplement("IForgeItem") public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) { if (!hasPattern(stack)) { - stack.remove(DataComponents.BLOCK_ENTITY_DATA); + stack.remove(HexDataComponents.PATTERN); } return false; } @@ -73,22 +68,13 @@ public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) { @Override public void inventoryTick(ItemStack pStack, Level pLevel, Entity pEntity, int pSlotId, boolean pIsSelected) { if (!hasPattern(pStack)) { - pStack.remove(DataComponents.BLOCK_ENTITY_DATA); + pStack.remove(HexDataComponents.PATTERN); } } @Override public @Nullable Iota readIota(ItemStack stack) { - var bet = stack.get(DataComponents.BLOCK_ENTITY_DATA);; - - if (bet == null || !bet.contains(BlockEntitySlate.TAG_PATTERN)) { - return null; - } - - return bet.read(HexPattern.CODEC.fieldOf(BlockEntitySlate.TAG_PATTERN)) - .result() - .map(PatternIota::new) - .orElse(null); + return getPattern(stack).map(PatternIota::new).orElse(null); } @Override @@ -103,25 +89,11 @@ public boolean canWrite(ItemStack stack, Iota datum) { @Override public void writeDatum(ItemStack stack, Iota datum) { - if (this.canWrite(stack, datum)) { + if(this.canWrite(stack, datum)) { if (datum == null) { - var beData = stack.get(DataComponents.BLOCK_ENTITY_DATA); - beData.update(tag -> { - tag.remove(BlockEntitySlate.TAG_PATTERN); - }); - - if(beData.isEmpty()) - stack.remove(DataComponents.BLOCK_ENTITY_DATA); + stack.remove(HexDataComponents.PATTERN); } else if (datum instanceof PatternIota pat) { - stack.update(DataComponents.BLOCK_ENTITY_DATA, CustomData.of(new CompoundTag()), data -> { - data.update(tag -> - tag.put(BlockEntitySlate.TAG_PATTERN, HexPattern.CODEC - .encodeStart(NbtOps.INSTANCE, pat.getPattern()) - .getOrThrow() - ) - ); - return data; - }); + stack.set(HexDataComponents.PATTERN, pat.getPattern()); } } } diff --git a/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 b/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 index 86c043ce36..f433d2925f 100644 --- a/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 +++ b/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 @@ -141,7 +141,7 @@ akashic_: { record: "Akashic Record", bookshelf: "Akashic Bookshelf", - connector: "Akashic Ligature", + ligature: "Akashic Ligature", }, slate: { diff --git a/Common/src/main/resources/assets/hexcasting/textures/block/slate.png b/Common/src/main/resources/assets/hexcasting/textures/block/slate.png new file mode 100644 index 0000000000000000000000000000000000000000..db79150b59dc3d3291c534594210d9cdafa4952d GIT binary patch literal 320 zcmV-G0l)rPx#`bk7VR5*>5QZWv~Fbq6UCyJ^tRH{&U4o_g^^Fk6O2LQn1^+aep{re{SHHuQ4 znH8LwLCcJ>A29Yqxk6^v$(QpP05HX)I*S2mD>DMr=9 zGm#K*#UL{m#h!^5v}oY%vrG~ZGBd`0sN7H+MPVtn0$L5M4$45lmPsPQ6r+NL&8CQA zB`tH|yLCo1sP4e8;iqf~STK-#x8SXFwt`m-Y{(k+?`xYxgm+Hx;d5&>0PqDi$-+Dq SMf(^40000 Date: Tue, 16 Dec 2025 09:18:07 -0600 Subject: [PATCH 23/51] * Added handlers to S2C Payloads --- .../hexcasting/common/msgs/MsgBeepS2C.java | 31 +++++---- .../hexcasting/common/msgs/MsgBlinkS2C.java | 16 +++-- .../common/msgs/MsgCastParticleS2C.java | 69 ++++++++++--------- .../msgs/MsgClearSpiralPatternsS2C.java | 23 ++++--- .../common/msgs/MsgNewSpellPatternS2C.java | 31 +++++---- .../common/msgs/MsgNewSpiralPatternsS2C.java | 27 +++++--- .../common/msgs/MsgNewWallScrollS2C.java | 29 +++++--- .../common/msgs/MsgOpenSpellGuiS2C.java | 21 ++++-- .../msgs/MsgRecalcWallScrollDisplayS2C.java | 25 ++++--- 9 files changed, 166 insertions(+), 106 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java index 29e2f4d431..da658ebf5d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBeepS2C.java @@ -30,18 +30,25 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgBeepS2C msg) { - Minecraft.getInstance().execute(() -> { - var minecraft = Minecraft.getInstance(); - var world = minecraft.level; - if (world != null) { - float pitch = (float) Math.pow(2, (msg.note() - 12) / 12.0); - world.playLocalSound(msg.target().x, msg.target().y, msg.target().z, - msg.instrument().getSoundEvent().value(), SoundSource.PLAYERS, 3, pitch, false); - world.addParticle(ParticleTypes.NOTE, msg.target().x, msg.target().y + 0.2, msg.target().z, - msg.note() / 24.0, 0, 0); - } - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgBeepS2C msg) { + Minecraft.getInstance().execute(() -> { + var minecraft = Minecraft.getInstance(); + var world = minecraft.level; + if (world != null) { + float pitch = (float) Math.pow(2, (msg.note() - 12) / 12.0); + world.playLocalSound(msg.target().x, msg.target().y, msg.target().z, + msg.instrument().getSoundEvent().value(), SoundSource.PLAYERS, 3, pitch, false); + world.addParticle(ParticleTypes.NOTE, msg.target().x, msg.target().y + 0.2, msg.target().z, + msg.note() / 24.0, 0, 0); + } + }); + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java index a572291628..5d08f8483b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgBlinkS2C.java @@ -31,14 +31,18 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgBlinkS2C self) { - Minecraft.getInstance().execute(new Runnable() { - @Override - public void run() { + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgBlinkS2C self) { + Minecraft.getInstance().execute(() -> { var player = Minecraft.getInstance().player; player.setPos(player.position().add(self.addedPosition())); - } - }); + }); + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java index 1b64420ffe..a84ac38e63 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java @@ -45,40 +45,47 @@ private static Vec3 randomInCircle(double maxTh) { return new Vec3(Math.sqrt(1.0 - z * z) * Math.cos(th), Math.sqrt(1.0 - z * z) * Math.sin(th), z); } - public static void handle(MsgCastParticleS2C msg) { - Minecraft.getInstance().execute(() -> { - var colProvider = msg.colorizer().getColorProvider(); - for (int i = 0; i < msg.spray().getCount(); i++) { - // For the colors, pick any random time to get a mix of colors + public void handle() { + Handler.handle(this); + } - var offset = randomInCircle(Mth.TWO_PI).normalize() - .scale(RANDOM.nextFloat() * msg.spray().getFuzziness() / 2); - var pos = msg.spray().getPos().add(offset); + public static final class Handler { - var phi = Math.acos(1.0 - RANDOM.nextDouble() * (1.0 - Math.cos(msg.spray().getSpread()))); - var theta = Math.PI * 2.0 * RANDOM.nextDouble(); - var v = msg.spray().getVel().normalize(); - // pick any old vector to get a vector normal to v with - Vec3 k; - if (v.x == 0.0 && v.y == 0.0) { - // oops, pick a *different* normal - k = new Vec3(1.0, 0.0, 0.0); - } else { - k = v.cross(new Vec3(0.0, 0.0, 1.0)); - } - var velUnlen = v.scale(Math.cos(phi)) - .add(k.scale(Math.sin(phi) * Math.cos(theta))) - .add(v.cross(k).scale(Math.sin(phi) * Math.sin(theta))); - var vel = velUnlen.scale(msg.spray().getVel().length() / 20); + public static void handle(MsgCastParticleS2C msg) { + Minecraft.getInstance().execute(() -> { + var colProvider = msg.colorizer().getColorProvider(); + for (int i = 0; i < msg.spray().getCount(); i++) { + // For the colors, pick any random time to get a mix of colors + + var offset = randomInCircle(Mth.TWO_PI).normalize() + .scale(RANDOM.nextFloat() * msg.spray().getFuzziness() / 2); + var pos = msg.spray().getPos().add(offset); - var color = colProvider.getColor(ClientTickCounter.getTotal(), velUnlen); + var phi = Math.acos(1.0 - RANDOM.nextDouble() * (1.0 - Math.cos(msg.spray().getSpread()))); + var theta = Math.PI * 2.0 * RANDOM.nextDouble(); + var v = msg.spray().getVel().normalize(); + // pick any old vector to get a vector normal to v with + Vec3 k; + if (v.x == 0.0 && v.y == 0.0) { + // oops, pick a *different* normal + k = new Vec3(1.0, 0.0, 0.0); + } else { + k = v.cross(new Vec3(0.0, 0.0, 1.0)); + } + var velUnlen = v.scale(Math.cos(phi)) + .add(k.scale(Math.sin(phi) * Math.cos(theta))) + .add(v.cross(k).scale(Math.sin(phi) * Math.sin(theta))); + var vel = velUnlen.scale(msg.spray().getVel().length() / 20); - Minecraft.getInstance().level.addParticle( - new ConjureParticleOptions(color), - pos.x, pos.y, pos.z, - vel.x, vel.y, vel.z - ); - } - }); + var color = colProvider.getColor(ClientTickCounter.getTotal(), velUnlen); + + Minecraft.getInstance().level.addParticle( + new ConjureParticleOptions(color), + pos.x, pos.y, pos.z, + vel.x, vel.y, vel.z + ); + } + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java index ef4d539a6e..b0a74a52c4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java @@ -30,13 +30,20 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgClearSpiralPatternsS2C self) { - Minecraft.getInstance().execute(() -> { - var mc = Minecraft.getInstance(); - assert mc.level != null; - var player = mc.level.getPlayerByUUID(self.playerUUID); - var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); - stack.slowClear(); - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgClearSpiralPatternsS2C self) { + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + assert mc.level != null; + var player = mc.level.getPlayerByUUID(self.playerUUID); + var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); + stack.slowClear(); + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java index bb0af803ac..1f4501e9eb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java @@ -38,17 +38,24 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgNewSpellPatternS2C self) { - Minecraft.getInstance().execute(() -> { - var mc = Minecraft.getInstance(); - if (self.info().isStackClear()) { - // don't pay attention to the screen, so it also stops when we die - mc.getSoundManager().stop(HexSounds.CASTING_AMBIANCE.getLocation(), null); - } - var screen = Minecraft.getInstance().screen; - if (screen instanceof GuiSpellcasting spellGui) { - spellGui.recvServerUpdate(self.info(), self.index()); - } - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgNewSpellPatternS2C self) { + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + if (self.info().isStackClear()) { + // don't pay attention to the screen, so it also stops when we die + mc.getSoundManager().stop(HexSounds.CASTING_AMBIANCE.getLocation(), null); + } + var screen = Minecraft.getInstance().screen; + if (screen instanceof GuiSpellcasting spellGui) { + spellGui.recvServerUpdate(self.info(), self.index()); + } + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java index 9b1a844353..0a24254e46 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java @@ -34,15 +34,22 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgNewSpiralPatternsS2C self) { - Minecraft.getInstance().execute(() -> { - var mc = Minecraft.getInstance(); - assert mc.level != null; - var player = mc.level.getPlayerByUUID(self.playerUUID); - var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); - - for (var pattern : self.patterns) - stack.addPattern(pattern, self.lifetime); - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgNewSpiralPatternsS2C self) { + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + assert mc.level != null; + var player = mc.level.getPlayerByUUID(self.playerUUID); + var stack = IClientXplatAbstractions.INSTANCE.getClientCastingStack(player); + + for (var pattern : self.patterns) + stack.addPattern(pattern, self.lifetime); + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java index d7d367315a..a87ffc304c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java @@ -40,17 +40,24 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgNewWallScrollS2C self) { - Minecraft.getInstance().execute(() -> { - var player = Minecraft.getInstance().player; - if (player != null) { - player.connection.handleAddEntity(self.inner); - var e = player.level().getEntity(self.inner.getId()); - if (e instanceof EntityWallScroll scroll) { - scroll.readSpawnData(self.pos, self.dir, self.scrollItem, self.showsStrokeOrder, - self.blockSize); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgNewWallScrollS2C self) { + Minecraft.getInstance().execute(() -> { + var player = Minecraft.getInstance().player; + if (player != null) { + player.connection.handleAddEntity(self.inner); + var e = player.level().getEntity(self.inner.getId()); + if (e instanceof EntityWallScroll scroll) { + scroll.readSpawnData(self.pos, self.dir, self.scrollItem, self.showsStrokeOrder, + self.blockSize); + } } - } - }); + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index f50ed7d26d..25d178cf28 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -56,12 +56,19 @@ public Type type() { return TYPE; } - public static void handle(MsgOpenSpellGuiS2C msg) { - Minecraft.getInstance().execute(() -> { - var mc = Minecraft.getInstance(); - mc.setScreen( - new GuiSpellcasting(msg.hand(), msg.patterns(), msg.stack, msg.ravenmind, - msg.parenCount)); - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgOpenSpellGuiS2C msg) { + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + mc.setScreen( + new GuiSpellcasting(msg.hand(), msg.patterns(), msg.stack, msg.ravenmind, + msg.parenCount)); + }); + } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java index 44ee8f9b21..7b1b8c4e50 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java @@ -34,14 +34,21 @@ public CustomPacketPayload.Type type() { return TYPE; } - public static void handle(MsgRecalcWallScrollDisplayS2C msg) { - Minecraft.getInstance().execute(() -> { - var mc = Minecraft.getInstance(); - var entity = mc.level.getEntity(msg.entityId); - if (entity instanceof EntityWallScroll scroll - && scroll.getShowsStrokeOrder() != msg.showStrokeOrder) { - scroll.recalculateDisplay(); - } - }); + public void handle() { + Handler.handle(this); + } + + public static final class Handler { + + public static void handle(MsgRecalcWallScrollDisplayS2C msg) { + Minecraft.getInstance().execute(() -> { + var mc = Minecraft.getInstance(); + var entity = mc.level.getEntity(msg.entityId); + if (entity instanceof EntityWallScroll scroll + && scroll.getShowsStrokeOrder() != msg.showStrokeOrder) { + scroll.recalculateDisplay(); + } + }); + } } } From b64763f296a4a00ff07469bc8827aed63b698525 Mon Sep 17 00:00:00 2001 From: Noelle Date: Tue, 16 Dec 2025 13:55:28 -0600 Subject: [PATCH 24/51] Duplicates strategy stuff --- Fabric/build.gradle | 3 +++ Neoforge/build.gradle | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 99dffb2982..48a1becf4a 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -203,5 +203,8 @@ remapJar { tasks.named('processResources') { duplicatesStrategy = DuplicatesStrategy.EXCLUDE } +tasks.named('sourcesJar') { + duplicatesStrategy = DuplicatesStrategy.EXCLUDE +} jar.finalizedBy(remapJar) \ No newline at end of file diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 492617c542..94ad005b97 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -179,6 +179,10 @@ tasks.named('processResources') { duplicatesStrategy = DuplicatesStrategy.EXCLUDE } +tasks.named('sourcesJar') { + duplicatesStrategy = DuplicatesStrategy.EXCLUDE +} + shadowJar { configurations = [project.configurations.shadowBundle] archiveClassifier = 'dev-shadow' From b58bec6382958a0721061f52ab1a1acbf6604be1 Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 17 Dec 2025 10:59:30 -0600 Subject: [PATCH 25/51] * Adjusted FabricRegister to work correctly, fixes attribute errors on Fabric; might overhaul the registry with it. * Registered ItemApiLookups (ParticleSprays function on Fabric!!!) * Readded BrainsweepeeIngredient.getSomeKindOfReasonableIDForEmi(), EMI recipes work for the most part * Fixed Fabric Creative Tabs (mostly) --- .../common/lib/HexCreativeTabs.java | 7 ++ .../brainsweep/BrainsweepeeIngredient.java | 2 + .../brainsweep/BrainsweepeeIngredients.java | 5 + .../brainsweep/EntityTagIngredient.java | 8 ++ .../brainsweep/EntityTypeIngredient.java | 8 ++ .../brainsweep/VillagerIngredient.java | 25 +++++ Fabric/build.gradle | 4 +- .../hexcasting/fabric/FabricHexInitializer.kt | 94 +++++++++++++++++-- .../fabric/cc/HexCardinalComponents.java | 6 +- .../interop/emi/BrainsweepeeEmiStack.java | 4 +- .../fabric/mixin/FabricPlayerMixin.java | 30 ------ .../fabric/xplat/FabricRegister.java | 40 ++++---- .../fabric/xplat/FabricXplatImpl.java | 4 +- .../main/resources/fabricasting.mixins.json | 1 - gradle.properties | 2 +- 15 files changed, 169 insertions(+), 71 deletions(-) delete mode 100644 Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricPlayerMixin.java diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java index dc5bc430fc..9feb903d56 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java @@ -1,6 +1,8 @@ package at.petrak.hexcasting.common.lib; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; @@ -10,6 +12,7 @@ import java.util.Map; import java.util.function.BiConsumer; +import static at.petrak.hexcasting.api.HexAPI.MOD_ID; import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexCreativeTabs { @@ -24,9 +27,13 @@ public static void registerCreativeTabs(BiConsumer new ItemStack(HexItems.SPELLBOOK))); + public static final ResourceKey HEX_KEY = ResourceKey.create(BuiltInRegistries.CREATIVE_MODE_TAB.key(), modLoc("hexcasting")); + public static final CreativeModeTab SCROLLS = register("scrolls", CreativeModeTab.builder(CreativeModeTab.Row.TOP, 0) .icon(() -> new ItemStack(HexItems.SCROLL_LARGE))); + public static final ResourceKey SCROLLS_KEY = ResourceKey.create(BuiltInRegistries.CREATIVE_MODE_TAB.key(), modLoc("scrolls")); + private static CreativeModeTab register(String name, CreativeModeTab.Builder tabBuilder) { var tab = tabBuilder.title(Component.translatable("itemGroup.hexcasting." + name)).build(); var old = TABS.put(modLoc(name), tab); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java index 16cc965a18..950e18a03e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java @@ -30,6 +30,8 @@ public abstract class BrainsweepeeIngredient { public abstract List getTooltip(boolean advanced); + public abstract String getSomeKindOfReasonableIDForEmi(); + /** * For the benefit of showing to the client, return an example of the entity. *

diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java index 7ad77853aa..054619ee7f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java @@ -69,6 +69,11 @@ public List getTooltip(boolean advanced) { return List.of(); } + @Override + public String getSomeKindOfReasonableIDForEmi() { + return "none"; + } + @Override public @Nullable Entity exampleEntity(Level level) { return null; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java index 978b0d4cce..841cb7466a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java @@ -77,6 +77,14 @@ public List getTooltip(boolean advanced) { return out; } + @Override + public String getSomeKindOfReasonableIDForEmi() { + var resloc = this.entityTypeTag.location(); + return resloc.getNamespace() + + "//" + + resloc.getPath(); + } + @Override public Entity exampleEntity(Level level) { var someEntityTys = BuiltInRegistries.ENTITY_TYPE.getTagOrEmpty(this.entityTypeTag).iterator(); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java index 68383eda31..7ce69c45eb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java @@ -55,6 +55,14 @@ public List getTooltip(boolean advanced) { ); } + @Override + public String getSomeKindOfReasonableIDForEmi() { + var resloc = BuiltInRegistries.ENTITY_TYPE.getKey(this.entityType); + return resloc.getNamespace() + + "//" + + resloc.getPath(); + } + @Override public Entity exampleEntity(Level level) { return this.entityType.create(level); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java index ab91129415..506982407a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java @@ -130,6 +130,31 @@ public List getTooltip(boolean advanced) { return tooltip; } + @Override + public String getSomeKindOfReasonableIDForEmi() { + var bob = new StringBuilder(); + if (this.profession != null) { + var profLoc = BuiltInRegistries.VILLAGER_PROFESSION.getKey(this.profession); + bob.append(profLoc.getNamespace()) + .append("//") + .append(profLoc.getPath()); + } else { + bob.append("null"); + } + bob.append("_"); + if (this.biome != null) { + var biomeLoc = BuiltInRegistries.VILLAGER_TYPE.getKey(this.biome); + bob.append(biomeLoc.getNamespace()) + .append("//") + .append(biomeLoc.getPath()); + } else { + bob.append("null"); + } + + bob.append(this.minLevel); + return bob.toString(); + } + @Override public Component getName() { MutableComponent component = Component.literal(""); diff --git a/Fabric/build.gradle b/Fabric/build.gradle index 48a1becf4a..af691233b7 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -49,7 +49,7 @@ loom { } configureEach { - runDir "run" + runDir "Fabric/run" ideConfigGenerated(true) } } @@ -121,7 +121,7 @@ dependencies { shadowBundle project(path: ':Common', configuration: 'transformProductionFabric') // === MANDATORY DEPS === - modCompileOnly("at.petra-k:paucal:$paucalVersion+$minecraftVersion-common") + modCompileOnly("at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric") // dear mod devs, don't put the platform in the middle of your version code modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-FABRIC-SNAPSHOT" modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 9eb504282e..0bcc874d33 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -1,13 +1,19 @@ package at.petrak.hexcasting.fabric -import at.petrak.hexcasting.api.HexAPI import at.petrak.hexcasting.api.HexAPI.modLoc import at.petrak.hexcasting.api.addldata.ADMediaHolder import at.petrak.hexcasting.api.advancements.HexAdvancementTriggers +import at.petrak.hexcasting.api.casting.ActionRegistryEntry import at.petrak.hexcasting.api.casting.iota.DoubleIota +import at.petrak.hexcasting.api.item.HexHolderItem +import at.petrak.hexcasting.api.item.IotaHolderItem +import at.petrak.hexcasting.api.item.PigmentItem +import at.petrak.hexcasting.api.item.VariantItem import at.petrak.hexcasting.api.misc.MediaConstants import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.api.mod.HexStatistics +import at.petrak.hexcasting.api.mod.HexTags +import at.petrak.hexcasting.api.utils.isOfTag import at.petrak.hexcasting.common.blocks.behavior.HexComposting import at.petrak.hexcasting.common.blocks.behavior.HexStrippables import at.petrak.hexcasting.common.casting.PatternRegistryManifest @@ -16,6 +22,7 @@ import at.petrak.hexcasting.common.casting.actions.spells.great.OpAltiora import at.petrak.hexcasting.common.command.PatternResKeyArgument import at.petrak.hexcasting.common.entities.HexEntities import at.petrak.hexcasting.common.items.ItemJewelerHammer +import at.petrak.hexcasting.common.items.storage.ItemScroll import at.petrak.hexcasting.common.lib.* import at.petrak.hexcasting.common.lib.hex.* import at.petrak.hexcasting.common.misc.AkashicTreeGrower @@ -26,13 +33,19 @@ import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients import at.petrak.hexcasting.fabric.cc.HexCardinalComponents +import at.petrak.hexcasting.fabric.cc.adimpl.CCHexHolder +import at.petrak.hexcasting.fabric.cc.adimpl.CCIotaHolder +import at.petrak.hexcasting.fabric.cc.adimpl.CCItemIotaHolder import at.petrak.hexcasting.fabric.cc.adimpl.CCMediaHolder +import at.petrak.hexcasting.fabric.cc.adimpl.CCPigment +import at.petrak.hexcasting.fabric.cc.adimpl.CCVariantItem import at.petrak.hexcasting.fabric.event.VillagerConversionCallback import at.petrak.hexcasting.fabric.loot.FabricHexLootModJankery import at.petrak.hexcasting.fabric.network.FabricPacketHandler import at.petrak.hexcasting.fabric.recipe.FabricModConditionalIngredient import at.petrak.hexcasting.fabric.recipe.FabricUnsealedIngredient import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage +import at.petrak.hexcasting.fabric.xplat.FabricXplatImpl import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions import net.fabricmc.api.ModInitializer @@ -46,20 +59,26 @@ import net.fabricmc.fabric.api.event.player.UseEntityCallback import net.fabricmc.fabric.api.item.v1.DefaultItemComponentEvents import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents import net.fabricmc.fabric.api.loot.v3.LootTableEvents +import net.fabricmc.fabric.api.`object`.builder.v1.entity.FabricDefaultAttributeRegistry import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer import net.fabricmc.fabric.api.registry.FlammableBlockRegistry import net.minecraft.commands.synchronization.SingletonArgumentInfo import net.minecraft.core.Registry import net.minecraft.core.registries.BuiltInRegistries +import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation import net.minecraft.world.InteractionResult +import net.minecraft.world.entity.EntityType import net.minecraft.world.entity.player.Player +import net.minecraft.world.item.Item +import net.minecraft.world.item.ItemStack import net.minecraft.world.item.Items import net.minecraft.world.level.block.Blocks import net.minecraft.world.level.block.state.properties.BlockSetType import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator import java.util.function.BiConsumer +import java.util.function.Function object FabricHexInitializer : ModInitializer { lateinit var CONFIG: FabricHexConfig @@ -132,30 +151,56 @@ object FabricHexInitializer : ModInitializer { } } - ItemGroupEvents.MODIFY_ENTRIES_ALL.register { tab, entries -> - HexBlocks.registerBlockCreativeTab(entries::accept, tab) - HexItems.registerItemCreativeTab(entries, tab) + ItemGroupEvents.modifyEntriesEvent(HexCreativeTabs.SCROLLS_KEY).register { r -> + val keyList = ArrayList?>() + val regi = FabricXplatImpl.INSTANCE.getActionRegistry() + for (key in regi.registryKeySet()) if (isOfTag( + regi, + key, + HexTags.Actions.PER_WORLD_PATTERN + ) + ) keyList.add(key) + keyList.sortWith(Comparator.comparing?, ResourceLocation?>(Function { obj: ResourceKey? -> obj!!.location() })) + for (key in keyList) { + r.accept( + ItemScroll.withPerWorldPattern( + ItemStack(HexItems.SCROLL_LARGE), + key + ) + ) + } + } + ItemGroupEvents.modifyEntriesEvent(HexCreativeTabs.HEX_KEY).register { r -> + for (item in this.itemsToAddToCreativeTab) { + r.accept(item) + } } } private fun initRegistries() { - fabricOnlyRegistration() - HexBlockSetTypes.registerBlocks(BlockSetType::register) HexCreativeTabs.registerCreativeTabs(bind(BuiltInRegistries.CREATIVE_MODE_TAB)) HexSounds.registerSounds(bind(BuiltInRegistries.SOUND_EVENT)) HexBlocks.registerBlocks(bind(BuiltInRegistries.BLOCK)) - HexBlocks.registerBlockItems(bind(BuiltInRegistries.ITEM)) + HexBlocks.registerBlockItems(boundForItem) HexBlockEntities.registerTiles(bind(BuiltInRegistries.BLOCK_ENTITY_TYPE)) - HexItems.registerItems(bind(BuiltInRegistries.ITEM)) + HexItems.registerItems(boundForItem) // Registry.register(IngredientDeserializer.REGISTRY, FabricModConditionalIngredient.ID, FabricModConditionalIngredient.Deserializer.INSTANCE) CustomIngredientSerializer.register(FabricUnsealedIngredient.Serializer.INSTANCE); CustomIngredientSerializer.register(FabricModConditionalIngredient.Serializer.INSTANCE); HexEntities.registerEntities(bind(BuiltInRegistries.ENTITY_TYPE)) HexAttributes.register() + FabricDefaultAttributeRegistry.register(EntityType.PLAYER, + Player.createAttributes() + .add(HexAttributes.GRID_ZOOM) + .add(HexAttributes.SCRY_SIGHT) + .add(HexAttributes.FEEBLE_MIND) + .add(HexAttributes.AMBIT_RADIUS) + .add(HexAttributes.MEDIA_CONSUMPTION_MODIFIER) + .add(HexAttributes.SENTINEL_RADIUS)) HexMobEffects.register(bind(BuiltInRegistries.MOB_EFFECT)) HexPotions.registerPotions(bind(BuiltInRegistries.POTION)) HexDataComponents.registerDataComponents(bind(BuiltInRegistries.DATA_COMPONENT_TYPE)) @@ -186,6 +231,8 @@ object FabricHexInitializer : ModInitializer { butYouCouldBeFire() HexStatistics.register() + + fabricOnlyRegistration() } // sorry lex (not sorry) @@ -196,6 +243,29 @@ object FabricHexInitializer : ModInitializer { }) } + for (item in BuiltInRegistries.ITEM) { + if (item is PigmentItem) { + HexCardinalComponents.PIGMENT_ITEM_LOOKUP.registerForItems({ + item, _ -> CCPigment.ItemBased(item); + }, item) + } + if (item is IotaHolderItem) { + HexCardinalComponents.IOTA_HOLDER_LOOKUP.registerForItems({ + item, _ -> CCItemIotaHolder.ItemBased(item); + }, item) + } + if (item is HexHolderItem) { + HexCardinalComponents.HEX_HOLDER_LOOKUP.registerForItems({ + item, _ -> CCHexHolder.ItemBased(item); + }, item) + } + if (item is VariantItem) { + HexCardinalComponents.VARIANT_ITEM_LOOKUP.registerForItems({ + item, _ -> CCVariantItem.ItemBased(item); + }, item) + } + } + HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ stack, _ -> CCMediaHolder.Static({ HexConfig.common().dustMediaAmount() }, ADMediaHolder.AMETHYST_DUST_PRIORITY, stack) }, HexItems.AMETHYST_DUST) @@ -217,6 +287,14 @@ object FabricHexInitializer : ModInitializer { }, HexBlocks.QUENCHED_ALLAY.asItem()) } + private val itemsToAddToCreativeTab : MutableSet = mutableSetOf() + + private val boundForItem : BiConsumer = BiConsumer { + t, id -> this.itemsToAddToCreativeTab.add(t) + Registry.register(BuiltInRegistries.ITEM, id, t) + } + + private fun butYouCouldBeFire() { val flameOn = FlammableBlockRegistry.getDefaultInstance() for (log in listOf( diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java index 89489990ab..27f647d864 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java @@ -58,13 +58,13 @@ public class HexCardinalComponents implements EntityComponentInitializer, ItemCo public static final ComponentKey VARIANT_ITEM = ComponentRegistry.getOrCreate(modLoc("variant_item"), CCVariantItem.class); - public static final ItemApiLookup MEDIA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("media_holder"), ADMediaHolder.class, Void.class); + public static final ItemApiLookup MEDIA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("media_holder_item"), ADMediaHolder.class, Void.class); - public static final ItemApiLookup IOTA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("iota_holder"), ADIotaHolder.class, Void.class); + public static final ItemApiLookup IOTA_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("iota_holder_item"), ADIotaHolder.class, Void.class); public static final ItemApiLookup PIGMENT_ITEM_LOOKUP = ItemApiLookup.get(modLoc("pigment_item"), ADPigment.class, Void.class); - public static final ItemApiLookup HEX_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("hex_holder"), ADHexHolder.class, Void.class); + public static final ItemApiLookup HEX_HOLDER_LOOKUP = ItemApiLookup.get(modLoc("hex_holder_item"), ADHexHolder.class, Void.class); public static final ItemApiLookup VARIANT_ITEM_LOOKUP = ItemApiLookup.get(modLoc("variant_item"), ADVariantItem.class, Void.class); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java index ad0cb9145f..ef5a1d6124 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java @@ -26,9 +26,7 @@ public class BrainsweepeeEmiStack extends EmiStack { public BrainsweepeeEmiStack(BrainsweepeeIngredient ingr) { this.ingredient = ingr; - - var bareId = this.ingredient.toString(); - this.id = modLoc(bareId); + this.id = modLoc(this.ingredient.getSomeKindOfReasonableIDForEmi()); } @Override diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricPlayerMixin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricPlayerMixin.java deleted file mode 100644 index 45a22117b7..0000000000 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/FabricPlayerMixin.java +++ /dev/null @@ -1,30 +0,0 @@ -package at.petrak.hexcasting.fabric.mixin; - -import at.petrak.hexcasting.common.lib.HexAttributes; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.ai.attributes.AttributeSupplier; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -@Mixin(Player.class) -public abstract class FabricPlayerMixin extends LivingEntity { - protected FabricPlayerMixin(EntityType entityType, Level level) { - super(entityType, level); - } - - @Inject(at = @At("RETURN"), method = "createAttributes") - private static void hex$addAttributes(CallbackInfoReturnable cir) { - var out = cir.getReturnValue(); - out.add(HexAttributes.GRID_ZOOM); - out.add(HexAttributes.SCRY_SIGHT); - out.add(HexAttributes.FEEBLE_MIND); - out.add(HexAttributes.MEDIA_CONSUMPTION_MODIFIER); - out.add(HexAttributes.AMBIT_RADIUS); - out.add(HexAttributes.SENTINEL_RADIUS); - } -} diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java index a234928246..aa2acf1ab1 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java @@ -5,6 +5,8 @@ import net.minecraft.core.Holder; import net.minecraft.core.MappedRegistry; import net.minecraft.core.RegistrationInfo; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceKey; import java.util.HashMap; @@ -14,44 +16,40 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class FabricRegister implements IXplatRegister { - private final MappedRegistry register; + private final Registry register; private final Map map; - public FabricRegister(MappedRegistry register) { - this.register = register; + @SuppressWarnings("unchecked") + public FabricRegister(ResourceKey> registryKey) { + this.register = (Registry) BuiltInRegistries.REGISTRY.get(registryKey.location()); this.map = new HashMap<>(); } - public FabricRegister(MappedRegistry register, Map map) { - this.register = register; + @SuppressWarnings("unchecked") + public FabricRegister(ResourceKey> registryKey, Map map) { + this.register = (Registry) BuiltInRegistries.REGISTRY.get(registryKey.location()); this.map = map; } + @Override public Supplier register(String id, Supplier provider) { - var key = ResourceKey.create( - register.key(), - modLoc(id) - ); - var value = provider.get(); - var info = RegistrationInfo.BUILT_IN; - register.register(key, value, info); - return provider; + T value = provider.get(); + Registry.register(register, modLoc(id), value); + return () -> value; } @Override public Holder registerHolder(String id, Supplier provider) { - map.put(id, provider.get()); - return register.wrapAsHolder(provider.get()); + T value = provider.get(); + map.put(id, value); + return register.wrapAsHolder(value); } @Override public void registerAll() { - map.forEach((string, provider) -> - register.register( - ResourceKey.create( - register.key(), modLoc(string) - ), provider, RegistrationInfo.BUILT_IN) - ); + map.forEach((string, value) -> + Registry.register(register, modLoc(string), value) + ); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index dc8fc104bf..ea1f2efad2 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -278,7 +278,7 @@ public boolean isPigment(ItemStack stack) { @Override public ColorProvider getColorProvider(FrozenPigment pigment) { - var cc = HexCardinalComponents.PIGMENT.maybeGet(pigment.item()); + var cc = Optional.ofNullable(HexCardinalComponents.PIGMENT_ITEM_LOOKUP.find(pigment.item(), null)); return cc.map(col -> col.provideColor(pigment.owner())).orElse(ColorProvider.MISSING); } @@ -525,7 +525,7 @@ public boolean isPlacingAllowed(ServerLevel world, BlockPos pos, ItemStack block @Override public IXplatRegister createRegistar(ResourceKey> registryKey) { - return new FabricRegister<>(FabricRegistryBuilder.createSimple(registryKey).buildAndRegister()); + return new FabricRegister<>(registryKey); } private static PehkuiInterop.ApiAbstraction PEHKUI_API = null; diff --git a/Fabric/src/main/resources/fabricasting.mixins.json b/Fabric/src/main/resources/fabricasting.mixins.json index 6c35fa8fb9..2a51dc2e0c 100644 --- a/Fabric/src/main/resources/fabricasting.mixins.json +++ b/Fabric/src/main/resources/fabricasting.mixins.json @@ -12,7 +12,6 @@ "FabricItemEntityMixin", "FabricLivingEntityMixin", "FabricMobMixin", - "FabricPlayerMixin", "FabricVillagerTurnIntoWitchMixin" ], "client": [ diff --git a/gradle.properties b/gradle.properties index 4ec28791ba..cce69bc225 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,7 +16,7 @@ fabric_loader_version=0.16.14 # this is the version published to modrinth/cf i swear # haha not anymore it's from mavenLocal -paucalVersion=0.7.1 +paucalVersion=0.7.1-pre-25 patchouliVersion=88 accessoriesVersion=1.1.0-beta.16+1.21.1 From 96e569ef593a703ab23a9c8c359e3989b798a5e1 Mon Sep 17 00:00:00 2001 From: Noelle Date: Fri, 19 Dec 2025 15:28:46 -0600 Subject: [PATCH 26/51] * Turned MobEffects into Holders. Might have to do this for other things. * Fixed Fabric interop naming. --- .../hexcasting/common/lib/HexMobEffects.java | 36 ++++++++----------- .../hexcasting/common/lib/HexPotions.java | 12 +++---- .../petrak/hexcasting/interop/HexInterop.java | 2 +- .../fabric/xplat/FabricClientXplatImpl.java | 2 +- .../fabric/xplat/FabricXplatImpl.java | 5 +-- .../hexcasting/forge/ForgeHexInitializer.java | 2 +- 6 files changed, 24 insertions(+), 35 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index d9a3f6cf1b..f6be2e2757 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -2,7 +2,10 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.misc.HexMobEffect; +import at.petrak.hexcasting.xplat.IXplatAbstractions; +import at.petrak.hexcasting.xplat.IXplatRegister; import net.minecraft.core.Holder; +import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffect; import net.minecraft.world.effect.MobEffectCategory; @@ -15,29 +18,18 @@ import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexMobEffects { - public static void register(BiConsumer r) { - for (var e : EFFECTS.entrySet()) { - r.accept(e.getValue(), e.getKey()); - } - } - - private static final Map EFFECTS = new LinkedHashMap<>(); - public static final MobEffect ENLARGE_GRID = make("enlarge_grid", - new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("enlarge_grid"), - 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); - public static final MobEffect SHRINK_GRID = make("shrink_grid", - new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660)) - .addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("shrink_grid"), - -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL); + private static final IXplatRegister REGISTER = IXplatAbstractions.INSTANCE + .createRegistar(Registries.MOB_EFFECT); - - private static T make(String id, T effect) { - var old = EFFECTS.put(modLoc(id), effect); - if (old != null) { - throw new IllegalArgumentException("Typo? Duplicate id " + id); - } - return effect; + public static void register() { + REGISTER.registerAll(); } + + public static final Holder ENLARGE_GRID = REGISTER.registerHolder("enlarge_grid", + () -> new HexMobEffect(MobEffectCategory.BENEFICIAL, 0xc875ff).addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("enlarge_grid"), + 0.25, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL)); + public static final Holder SHRINK_GRID = REGISTER.registerHolder("shrink_grid", + () -> new HexMobEffect(MobEffectCategory.HARMFUL, 0xc0e660).addAttributeModifier(HexAttributes.GRID_ZOOM, HexAPI.modLoc("shrink_grid"), + -0.2, AttributeModifier.Operation.ADD_MULTIPLIED_TOTAL)); } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java index 11ed7f7dcb..e9cad03dd4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java @@ -20,18 +20,18 @@ public class HexPotions { private static final Map POTIONS = new LinkedHashMap<>(); public static final Potion ENLARGE_GRID = make("enlarge_grid", - new Potion("enlarge_grid", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 3600))); + new Potion("enlarge_grid", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 3600))); public static final Potion ENLARGE_GRID_LONG = make("enlarge_grid_long", - new Potion("enlarge_grid_long", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 9600))); + new Potion("enlarge_grid_long", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 9600))); public static final Potion ENLARGE_GRID_STRONG = make("enlarge_grid_strong", - new Potion("enlarge_grid_strong", new MobEffectInstance(Holder.direct(HexMobEffects.ENLARGE_GRID), 1800, 1))); + new Potion("enlarge_grid_strong", new MobEffectInstance(HexMobEffects.ENLARGE_GRID, 1800, 1))); public static final Potion SHRINK_GRID = make("shrink_grid", - new Potion("shrink_grid", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 3600))); + new Potion("shrink_grid", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 3600))); public static final Potion SHRINK_GRID_LONG = make("shrink_grid_long", - new Potion("shrink_grid_long", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 9600))); + new Potion("shrink_grid_long", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 9600))); public static final Potion SHRINK_GRID_STRONG = make("shrink_grid_strong", - new Potion("shrink_grid_strong", new MobEffectInstance(Holder.direct(HexMobEffects.SHRINK_GRID), 1800, 1))); + new Potion("shrink_grid_strong", new MobEffectInstance(HexMobEffects.SHRINK_GRID, 1800, 1))); public static void registerPotions(BiConsumer r) { for (var e : POTIONS.entrySet()) { diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/HexInterop.java b/Common/src/main/java/at/petrak/hexcasting/interop/HexInterop.java index 6ecbc2d40f..f0c878373b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/HexInterop.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/HexInterop.java @@ -20,7 +20,7 @@ public static final class Forge { } public static final class Fabric { - public static final String TRINKETS_API_ID = "trinkets"; + public static final String ACCESSORIES_API_ID = "accessories"; } public static void init() { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java index 033b7d5c33..bd5048cdfe 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricClientXplatImpl.java @@ -44,7 +44,7 @@ public void setRenderLayer(Block block, RenderType type) { @Override public void initPlatformSpecific() { - if (IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Fabric.TRINKETS_API_ID)) { + if (IXplatAbstractions.INSTANCE.isModPresent(HexInterop.Fabric.ACCESSORIES_API_ID)) { AccessoriesApiInterop.clientInit(); } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index ea1f2efad2..643166430f 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -53,8 +53,6 @@ import net.fabricmc.loader.api.ModContainer; import net.minecraft.advancements.critereon.ItemPredicate; import net.minecraft.core.*; -import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.core.registries.Registries; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientGamePacketListener; @@ -84,7 +82,6 @@ import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; import net.minecraft.world.level.storage.loot.predicates.MatchTool; import net.minecraft.world.phys.Vec3; -import org.apache.commons.codec.binary.Hex; import org.jetbrains.annotations.Nullable; import virtuoel.pehkui.api.ScaleTypes; @@ -113,7 +110,7 @@ public boolean isModPresent(String id) { @Override public void initPlatformSpecific() { - if (this.isModPresent(HexInterop.Fabric.TRINKETS_API_ID)) { + if (this.isModPresent(HexInterop.Fabric.ACCESSORIES_API_ID)) { AccessoriesApiInterop.init(); } } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index 53128fdf48..d1857a9f08 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -125,7 +125,7 @@ private static void initRegistry() { bind(Registries.ENTITY_TYPE, HexEntities::registerEntities); // Testing out new registration system HexAttributes.register(); - bind(Registries.MOB_EFFECT, HexMobEffects::register); + HexMobEffects.register(); bind(Registries.POTION, HexPotions::registerPotions); bind(Registries.PARTICLE_TYPE, HexParticles::registerParticles); From 7987ab545fd149db4d3bf7f26654204efcc34e3a Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 24 Dec 2025 11:45:45 -0600 Subject: [PATCH 27/51] * Fixed Impeti not spraying particles or making noise when activated (Not when erroring) * Adjusted Fabric creative mode tab entries (untested) * Fixed scrolls being unreadable * Fixed rendering artifacts when both toasts and casting stack are present on screen --- .../circles/BlockEntityAbstractImpetus.java | 1 + .../hexcasting/client/render/RenderLib.kt | 2 ++ .../common/items/storage/ItemScroll.java | 7 ++++++ .../hexcasting/fabric/FabricHexInitializer.kt | 25 +++++++++++++------ 4 files changed, 27 insertions(+), 8 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index ec9a2d4a6c..85de2c23fc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -190,6 +190,7 @@ public void startExecution(@Nullable ServerPlayer player) { this.executionState.getTickSpeed()); serverLevel.setBlockAndUpdate(this.getBlockPos(), this.getBlockState().setValue(BlockCircleComponent.ENERGIZED, true)); + ICircleComponent.sfx(this.getBlockPos(), this.getBlockState(), this.level, this, true); } @Contract(pure = true) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt index cc01757023..3263d314cb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt @@ -7,6 +7,7 @@ import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.api.utils.TAU import at.petrak.hexcasting.client.ClientTickCounter import at.petrak.hexcasting.client.gui.GuiSpellcasting +import com.mojang.blaze3d.vertex.BufferUploader import com.mojang.blaze3d.vertex.DefaultVertexFormat import com.mojang.blaze3d.vertex.PoseStack import com.mojang.blaze3d.vertex.Tesselator @@ -456,4 +457,5 @@ fun renderQuad( .setColor(color) buf.addVertex(mat, x + w, y, 0f) .setColor(color) + BufferUploader.drawWithShader(buf.buildOrThrow()) } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java index 5e105c50f6..9ba2cb5aec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java @@ -2,6 +2,7 @@ import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.casting.iota.NullIota; import at.petrak.hexcasting.api.casting.iota.PatternIota; import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.item.IotaHolderItem; @@ -188,4 +189,10 @@ public Optional getTooltipImage(ItemStack stack) { return Optional.empty(); } + + @Override + public @Nullable Iota readIota(ItemStack stack) { + var pattern = stack.get(HexDataComponents.PATTERN); + return pattern != null ? new PatternIota(pattern) : null; + } } diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 0bcc874d33..bdc0f0adb4 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -22,6 +22,7 @@ import at.petrak.hexcasting.common.casting.actions.spells.great.OpAltiora import at.petrak.hexcasting.common.command.PatternResKeyArgument import at.petrak.hexcasting.common.entities.HexEntities import at.petrak.hexcasting.common.items.ItemJewelerHammer +import at.petrak.hexcasting.common.items.magic.ItemMediaBattery import at.petrak.hexcasting.common.items.storage.ItemScroll import at.petrak.hexcasting.common.lib.* import at.petrak.hexcasting.common.lib.hex.* @@ -172,7 +173,15 @@ object FabricHexInitializer : ModInitializer { } ItemGroupEvents.modifyEntriesEvent(HexCreativeTabs.HEX_KEY).register { r -> for (item in this.itemsToAddToCreativeTab) { - r.accept(item) + if (item is ItemMediaBattery) { + r.accept(HexItems.BATTERY_DUST_STACK.get()) + r.accept(HexItems.BATTERY_SHARD_STACK.get()) + r.accept(HexItems.BATTERY_CRYSTAL_STACK.get()) + r.accept(HexItems.BATTERY_QUENCHED_SHARD_STACK.get()) + r.accept(HexItems.BATTERY_QUENCHED_BLOCK_STACK.get()) + } else { + r.accept(item) + } } } } @@ -201,7 +210,7 @@ object FabricHexInitializer : ModInitializer { .add(HexAttributes.AMBIT_RADIUS) .add(HexAttributes.MEDIA_CONSUMPTION_MODIFIER) .add(HexAttributes.SENTINEL_RADIUS)) - HexMobEffects.register(bind(BuiltInRegistries.MOB_EFFECT)) + HexMobEffects.register() HexPotions.registerPotions(bind(BuiltInRegistries.POTION)) HexDataComponents.registerDataComponents(bind(BuiltInRegistries.DATA_COMPONENT_TYPE)) @@ -237,12 +246,6 @@ object FabricHexInitializer : ModInitializer { // sorry lex (not sorry) private fun fabricOnlyRegistration() { - DefaultItemComponentEvents.MODIFY.register { - it.modify(Items.PUMPKIN_PIE, { - it.set(HexDataComponents.IOTA, DoubleIota(Math.PI)) - }) - } - for (item in BuiltInRegistries.ITEM) { if (item is PigmentItem) { HexCardinalComponents.PIGMENT_ITEM_LOOKUP.registerForItems({ @@ -285,6 +288,12 @@ object FabricHexInitializer : ModInitializer { HexCardinalComponents.MEDIA_HOLDER_LOOKUP.registerForItems({ stack, _ -> CCMediaHolder.Static({ MediaConstants.QUENCHED_BLOCK_UNIT }, ADMediaHolder.QUENCHED_ALLAY_PRIORITY, stack) }, HexBlocks.QUENCHED_ALLAY.asItem()) + + HexCardinalComponents.IOTA_HOLDER_LOOKUP.registerForItems({ + stack, _ -> CCItemIotaHolder.Static(stack) { + return@Static DoubleIota(Math.PI) + } + }, Items.PUMPKIN_PIE) } private val itemsToAddToCreativeTab : MutableSet = mutableSetOf() From 871d6ffadce16ae5a4ddad4a7b0977e8f768c6e8 Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 24 Dec 2025 15:20:24 -0600 Subject: [PATCH 28/51] * Fixed slate rendering, scroll rendering, inline pattern rendering (partially) --- .../render/WorldlyPatternRenderHelpers.java | 17 ++++++++++++----- .../interop/inline/InlinePatternRenderer.java | 4 +++- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index b1da11a2a9..e7ad9b9d69 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -9,7 +9,9 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.math.Axis; import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.LightTexture; import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.core.Direction; import net.minecraft.core.Vec3i; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.AttachFace; @@ -52,7 +54,7 @@ public static void renderPatternForScroll(HexPattern pattern, EntityWallScroll s ps.pushPose(); ps.translate(-blockSize / 2f, -blockSize / 2f, 1f / 32f); // there's almost certainly a better way to do this, but we're just flipping the y and z axes to fix normals - ps.last().normal().mul(new Matrix3f(1, 0, 0, 0, 0, 1, 0, 1, 0)); + // no need for this anymore :D renderPattern(pattern, showStrokeOrder ? READABLE_SCROLL_SETTINGS : SCROLL_SETTINGS, showStrokeOrder ? PatternColors.READABLE_SCROLL_COLORS : PatternColors.DEFAULT_PATTERN_COLOR, scroll.getPos().hashCode(), ps, bufSource, null, null, light, blockSize); @@ -61,7 +63,7 @@ public static void renderPatternForScroll(HexPattern pattern, EntityWallScroll s private static final int[] WALL_ROTATIONS = {180, 270, 0, 90}; private static final Vec3i[] SLATE_FACINGS = {new Vec3i(0, -1, 0), new Vec3i(-1, -1, 0), new Vec3i(-1, -1, 1), new Vec3i(0, -1 , 1)}; - private static final Vec3[] WALL_NORMALS = {new Vec3(0, 0, -1), new Vec3(-1, 0, 0), new Vec3(0, 0, -1), new Vec3(-1, 0, 0)}; + private static final Vec3[] WALL_NORMALS = {new Vec3(0, 0, 1), new Vec3(-1, 0, 0), new Vec3(0, 0, -1), new Vec3(1, 0, 0)}; private static final Vec3i[] SLATE_FLOORCEIL_FACINGS = {new Vec3i(0,0,0), new Vec3i(1,0,0), new Vec3i(1,0,1), new Vec3i(0,0,1)}; public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern pattern, PoseStack ps, MultiBufferSource buffer, int light, BlockState bs) @@ -89,12 +91,17 @@ public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern patte ps.mulPose(Axis.YP.rotationDegrees(facing*-90)); ps.mulPose(Axis.XP.rotationDegrees(90 * (isOnCeiling ? -1 : 1))); if(isOnCeiling) ps.translate(0,-1,1); + + // Set the normal for floor/ceiling slates so lighting is correct + // Floor faces up, ceiling faces down + normal = isOnCeiling ? new Vec3(0, -1, 0) : new Vec3(0, 1, 0); } + int actualLight = LevelRenderer.getLightColor(tile.getLevel(), tile.getBlockPos().relative(Direction.getNearest(normal))); renderPattern(pattern, - wombly ? WORLDLY_SETTINGS_WOBBLY : WORLDLY_SETTINGS, - wombly ? PatternColors.SLATE_WOBBLY_PURPLE_COLOR : PatternColors.DEFAULT_PATTERN_COLOR, - tile.getBlockPos().hashCode(), ps, buffer, normal, null, light, 1); + wombly ? WORLDLY_SETTINGS_WOBBLY : WORLDLY_SETTINGS, + wombly ? PatternColors.SLATE_WOBBLY_PURPLE_COLOR : PatternColors.DEFAULT_PATTERN_COLOR, + tile.getBlockPos().hashCode(), ps, buffer, normal, null, actualLight, 1); ps.popPose(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java index eb7b798487..39130f4e96 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java @@ -5,6 +5,7 @@ import com.samsthenerd.inline.api.client.InlineRenderer; import com.samsthenerd.inline.impl.InlineStyle; import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.LightTexture; import net.minecraft.network.chat.Style; import net.minecraft.resources.ResourceLocation; @@ -61,7 +62,8 @@ public int render(InlinePatternData data, GuiGraphics drawContext, int index, St drawContext.pose().pushPose(); drawContext.pose().translate(isGlowy ? -1f : 0, isGlowy ? -1.5f : -0.5f, 0f); int color = trContext.usableColor(); - PatternRenderer.renderPattern(data.pattern, drawContext.pose(), new PatternRenderer.WorldlyBits(drawContext.bufferSource(), trContext.light(), null), + boolean isFlat = InlineRenderer.isFlat(drawContext.pose(), trContext.layerType()); + PatternRenderer.renderPattern(data.pattern, drawContext.pose(), !isFlat ? new PatternRenderer.WorldlyBits(drawContext.bufferSource(), trContext.light(), null) : null, isGlowy ? INLINE_SETTINGS_GLOWY : INLINE_SETTINGS, isGlowy ? new PatternColors(color, 0xFF_000000 | glowyParentColor) : PatternColors.singleStroke(color), 0, INLINE_TEXTURE_RES); From 47d68ccd9a967f5834d22f650be6223c5d1427e4 Mon Sep 17 00:00:00 2001 From: Noelle Date: Fri, 26 Dec 2025 19:17:20 -0600 Subject: [PATCH 29/51] * Added a workaround for https://github.com/SamsTheNerd/inline/issues/34 * Fixed Media Cube implementation killing server * Adjusted neoforge.mods.toml --- .../common/items/magic/ItemCreativeUnlocker.java | 8 +++++--- .../at/petrak/hexcasting/fabric/FabricHexInitializer.kt | 4 ++++ Neoforge/build.gradle | 2 +- .../at/petrak/hexcasting/forge/ForgeHexInitializer.java | 3 +++ Neoforge/src/main/resources/META-INF/neoforge.mods.toml | 7 ++++++- 5 files changed, 19 insertions(+), 5 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java index 60348c00e2..9d989c3af6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java @@ -8,8 +8,8 @@ import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; -import com.mojang.authlib.minecraft.client.MinecraftClient; import net.minecraft.ChatFormatting; +import net.minecraft.Util; import net.minecraft.advancements.AdvancementNode; import net.minecraft.client.Minecraft; import net.minecraft.core.component.DataComponentType; @@ -84,6 +84,7 @@ public static boolean isDebug(ItemStack stack, String flag) { } public static Component infiniteMedia(Level level) { + String prefix = "item.hexcasting.creative_unlocker."; String emphasis = Language.getInstance().getOrDefault(prefix + "for_emphasis"); @@ -235,7 +236,8 @@ public ItemStack finishUsingItem(ItemStack stack, Level level, LivingEntity cons private static MutableComponent rainbow(MutableComponent component, int shift, Level level) { if (level == null) { - return component.withStyle(ChatFormatting.WHITE); + return component.withStyle((s) -> s.withColor( + TextColor.fromRgb(Mth.hsvToRgb((((float) Util.getMillis() / 50) + shift) * 2 % 360 / 360F, 1F, 1F)))); } return component.withStyle((s) -> s.withColor( @@ -245,7 +247,7 @@ private static MutableComponent rainbow(MutableComponent component, int shift, L @Override public void appendHoverText(ItemStack stack, TooltipContext context, List tooltipComponents, TooltipFlag isAdvanced) { - Component emphasized = infiniteMedia(Minecraft.getInstance().level); + Component emphasized = infiniteMedia(null); MutableComponent modName = Component.translatable("item.hexcasting.creative_unlocker.mod_name").withStyle( (s) -> s.withColor(ItemMediaHolder.HEX_COLOR)); diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index bdc0f0adb4..8b0f36220a 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -49,6 +49,8 @@ import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage import at.petrak.hexcasting.fabric.xplat.FabricXplatImpl import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions +import com.samsthenerd.inline.utils.EntityCradle +import com.samsthenerd.inline.utils.cradles.EntTypeCradle import net.fabricmc.api.ModInitializer import net.fabricmc.fabric.api.command.v2.ArgumentTypeRegistry import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback @@ -86,6 +88,8 @@ object FabricHexInitializer : ModInitializer { override fun onInitialize() { this.CONFIG = FabricHexConfig.setup() + // workaround for Inline EntTypeCradles not being available on server, related to https://github.com/SamsTheNerd/inline/issues/34 + EntTypeCradle.fromTypeId(ResourceLocation.fromNamespaceAndPath("minecraft", "pig")).get().getType(); FabricPacketHandler.initPackets() FabricPacketHandler.init() diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 94ad005b97..8a04a9d5e6 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -90,7 +90,7 @@ dependencies { modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-neoforge" modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" modImplementation "com.illusivesoulworks.caelus:caelus-neoforge:$caelusVersion" - modImplementation "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" + modImplementation "com.samsthenerd.inline:inline-neoforge:1.21.1-1.2.2-74" // needed for inline to run modRuntimeOnly("me.shedaniel.cloth:cloth-config-forge:$clothConfigVersion") modRuntimeOnly "com.samsthenerd.inline:inline-neoforge:$minecraftVersion-$inlineVersion" diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index d1857a9f08..1e7f103253 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -30,6 +30,7 @@ import at.petrak.hexcasting.forge.network.MsgBrainsweepAck; import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; +import com.samsthenerd.inline.utils.cradles.EntTypeCradle; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; @@ -76,6 +77,8 @@ public class ForgeHexInitializer { public ForgeHexInitializer(ModContainer modContainer) { initConfig(modContainer); + // workaround for Inline EntTypeCradles not being available on server, related to https://github.com/SamsTheNerd/inline/issues/34 + EntTypeCradle.fromTypeId(ResourceLocation.fromNamespaceAndPath("minecraft", "pig")).get().getType(); initRegistries(); initRegistry(); initListeners(); diff --git a/Neoforge/src/main/resources/META-INF/neoforge.mods.toml b/Neoforge/src/main/resources/META-INF/neoforge.mods.toml index 75ffd0b01d..6b5b68b202 100644 --- a/Neoforge/src/main/resources/META-INF/neoforge.mods.toml +++ b/Neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -59,4 +59,9 @@ modId = "inline" mandatory = true versionRange = "[1.21.1-1.2.2,)" ordering = "NONE" -side = "BOTH" \ No newline at end of file +side = "BOTH" + +[[dependencies.hexcasting]] +modId = "accessories" +mandatory = false +versionRange = "[1.1.0-beta.16+1.21.1,)" \ No newline at end of file From 9a9e54a5502a5b01029ca4b906d79d067ae6aec0 Mon Sep 17 00:00:00 2001 From: Noelle Date: Fri, 26 Dec 2025 19:20:06 -0600 Subject: [PATCH 30/51] * i guess non-flat inline patterns will be fullbright for now :N_Disbelief: --- .../petrak/hexcasting/interop/inline/InlinePatternRenderer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java index 39130f4e96..33372c62d8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java @@ -63,7 +63,7 @@ public int render(InlinePatternData data, GuiGraphics drawContext, int index, St drawContext.pose().translate(isGlowy ? -1f : 0, isGlowy ? -1.5f : -0.5f, 0f); int color = trContext.usableColor(); boolean isFlat = InlineRenderer.isFlat(drawContext.pose(), trContext.layerType()); - PatternRenderer.renderPattern(data.pattern, drawContext.pose(), !isFlat ? new PatternRenderer.WorldlyBits(drawContext.bufferSource(), trContext.light(), null) : null, + PatternRenderer.renderPattern(data.pattern, drawContext.pose(), !isFlat ? new PatternRenderer.WorldlyBits(drawContext.bufferSource(), LightTexture.FULL_BRIGHT, null) : null, isGlowy ? INLINE_SETTINGS_GLOWY : INLINE_SETTINGS, isGlowy ? new PatternColors(color, 0xFF_000000 | glowyParentColor) : PatternColors.singleStroke(color), 0, INLINE_TEXTURE_RES); From 057042c33ec9c28c650a050f431c6ffd03278f9c Mon Sep 17 00:00:00 2001 From: SuperKnux <34802236+SuperKnux@users.noreply.github.com> Date: Sat, 27 Dec 2025 08:27:15 -0600 Subject: [PATCH 31/51] Update artifact preparation to include Neoforge --- .github/workflows/pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index c30d27f7d3..54de83fdc3 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -34,7 +34,7 @@ jobs: - name: Prepare artifacts for upload run: | mkdir -p dist - cp {Common,Forge,Fabric}/build/libs/*.jar dist + cp {Common,Neoforge,Fabric}/build/libs/*.jar dist - name: Upload artifacts uses: actions/upload-artifact@v4 From b9beb48c88e73bcfff9e81fe4b96dc3fc7839ead Mon Sep 17 00:00:00 2001 From: Noelle Date: Sat, 27 Dec 2025 23:49:30 -0600 Subject: [PATCH 32/51] * Fixed particle texture bleeding on Neo * Fixed ClientCastingStacks not ticking on Neo --- .../hexcasting/client/particles/ConjureParticle.java | 2 +- .../hexcasting/forge/ForgeHexClientInitializer.java | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java b/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java index 411b089535..9f0ae031a3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/particles/ConjureParticle.java @@ -99,7 +99,7 @@ public BufferBuilder begin(Tesselator tess, TextureManager texMan) { RenderSystem.setShaderTexture(0, TextureAtlas.LOCATION_PARTICLES); var tex = texMan.getTexture(TextureAtlas.LOCATION_PARTICLES); - IClientXplatAbstractions.INSTANCE.setFilterSave(tex, true, false); + IClientXplatAbstractions.INSTANCE.setFilterSave(tex, false, false); RenderSystem.enableDepthTest(); return tess.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.PARTICLE); } diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index 394ecec74f..1440b80076 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -12,18 +12,21 @@ import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.lib.HexParticles; import at.petrak.hexcasting.common.misc.PatternTooltip; +import at.petrak.hexcasting.forge.lib.ForgeHexAttachments; import at.petrak.hexcasting.interop.HexInterop; import net.minecraft.client.Minecraft; import net.minecraft.client.color.block.BlockColors; import net.minecraft.client.color.item.ItemColors; import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.PlayerModel; +import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.particle.ParticleProvider; import net.minecraft.client.particle.SpriteSet; import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.entity.LivingEntityRenderer; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; +import net.minecraft.world.entity.player.Player; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; import net.neoforged.neoforge.client.event.*; @@ -72,6 +75,13 @@ public static void clientInit(FMLClientSetupEvent evt) { evBus.addListener((ClientTickEvent.Post e) -> { ClientTickCounter.clientTickEnd(); ShiftScrollListener.clientTickEnd(); + ClientLevel level = Minecraft.getInstance().level; + if (level != null) { + for (Player player : level.players()) { + if (!player.hasData(ForgeHexAttachments.CLIENT_CASTING_STACK.get())) continue; + player.getData(ForgeHexAttachments.CLIENT_CASTING_STACK.get()).tick(); + } + } }); evBus.addListener((InputEvent.MouseScrollingEvent e) -> { From 6f8d18240c93eb4b5d611c53f5bda6ba70bc24c1 Mon Sep 17 00:00:00 2001 From: Noelle Date: Sun, 28 Dec 2025 12:44:17 -0600 Subject: [PATCH 33/51] * Removed the hex_unbreakable.jsons in generated data --- .../data/hexcasting/tags/block/hex_unbreakable.json | 5 ----- .../api/casting/mishaps/MishapOsirisUnderWaterLevel.java | 4 ++++ .../hexcasting/datagen/tag/HexBlockTagProvider.java | 3 --- .../data/hexcasting/tags/block/hex_unbreakable.json | 8 -------- .../data/hexcasting/tags/block/hex_unbreakable.json | 5 ----- 5 files changed, 4 insertions(+), 21 deletions(-) delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json create mode 100644 Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json deleted file mode 100644 index 094771ef74..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "#minecraft:needs_diamond_tool" - ] -} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java new file mode 100644 index 0000000000..360a93345e --- /dev/null +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java @@ -0,0 +1,4 @@ +package at.petrak.hexcasting.api.casting.mishaps; + +public class MishapOsirisUnderWaterLevel { +} diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java index 9d8372aeac..c826a0efd4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java @@ -35,9 +35,6 @@ protected void addTags(HolderLookup.Provider provider) { .addTag(HexTags.Blocks.IMPETI) .addTag(HexTags.Blocks.DIRECTRICES); - tag(HexTags.Blocks.HEX_UNBREAKABLE) - .addOptionalTag(BlockTags.NEEDS_DIAMOND_TOOL.location()); - add(tag(BlockTags.MINEABLE_WITH_PICKAXE), HexBlocks.SLATE_BLOCK, HexBlocks.SLATE_TILES, HexBlocks.SLATE_BRICKS, HexBlocks.SLATE_BRICKS_SMALL, HexBlocks.SLATE_PILLAR, HexBlocks.SLATE, diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json deleted file mode 100644 index e2e4a77147..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - { - "id": "#minecraft:needs_diamond_tool", - "required": false - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json deleted file mode 100644 index 094771ef74..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/hex_unbreakable.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "#minecraft:needs_diamond_tool" - ] -} \ No newline at end of file From 8c860c546967c7d975a3108fbb4c718003b9555e Mon Sep 17 00:00:00 2001 From: Noelle Date: Sun, 28 Dec 2025 12:44:44 -0600 Subject: [PATCH 34/51] * oops --- .../api/casting/mishaps/MishapOsirisUnderWaterLevel.java | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java deleted file mode 100644 index 360a93345e..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOsirisUnderWaterLevel.java +++ /dev/null @@ -1,4 +0,0 @@ -package at.petrak.hexcasting.api.casting.mishaps; - -public class MishapOsirisUnderWaterLevel { -} From eda63f68e9f5ab596350227237d34edfb52383d7 Mon Sep 17 00:00:00 2001 From: Noelle Date: Fri, 2 Jan 2026 21:04:53 -0600 Subject: [PATCH 35/51] Updated generated resources, added synthetic EMI IDs to Fabric brainsweep recipes, minor fixes on Fabric --- .../blockstates/akashic_bookshelf.json | 107 --------- .../blockstates/akashic_ligature.json | 7 - .../blockstates/akashic_record.json | 7 - .../blockstates/amethyst_bricks.json | 7 - .../blockstates/amethyst_bricks_small.json | 7 - .../blockstates/amethyst_dust_block.json | 7 - .../blockstates/amethyst_edified_leaves.json | 7 - .../blockstates/amethyst_pillar.json | 30 --- .../blockstates/amethyst_sconce.json | 56 ----- .../blockstates/amethyst_tiles.json | 7 - .../blockstates/ancient_scroll_paper.json | 7 - .../ancient_scroll_paper_lantern.json | 7 - .../aventurine_edified_leaves.json | 7 - .../blockstates/citrine_edified_leaves.json | 7 - .../blockstates/conjured_block.json | 7 - .../blockstates/conjured_light.json | 7 - .../blockstates/directrix/boolean.json | 142 ------------ .../blockstates/directrix/empty.json | 50 ----- .../blockstates/directrix/redstone.json | 96 -------- .../blockstates/edified_button.json | 118 ---------- .../hexcasting/blockstates/edified_door.json | 124 ---------- .../hexcasting/blockstates/edified_fence.json | 48 ---- .../blockstates/edified_fence_gate.json | 80 ------- .../hexcasting/blockstates/edified_log.json | 16 -- .../blockstates/edified_log_amethyst.json | 16 -- .../blockstates/edified_log_aventurine.json | 16 -- .../blockstates/edified_log_citrine.json | 16 -- .../blockstates/edified_log_purple.json | 16 -- .../hexcasting/blockstates/edified_panel.json | 7 - .../blockstates/edified_planks.json | 17 -- .../blockstates/edified_pressure_plate.json | 10 - .../hexcasting/blockstates/edified_slab.json | 13 -- .../blockstates/edified_stairs.json | 209 ----------------- .../hexcasting/blockstates/edified_tile.json | 7 - .../blockstates/edified_trapdoor.json | 68 ------ .../hexcasting/blockstates/edified_wood.json | 16 -- .../hexcasting/blockstates/impetus/empty.json | 50 ----- .../hexcasting/blockstates/impetus/look.json | 50 ----- .../blockstates/impetus/redstone.json | 96 -------- .../blockstates/impetus/rightclick.json | 50 ----- .../blockstates/quenched_allay.json | 7 - .../blockstates/quenched_allay_bricks.json | 7 - .../quenched_allay_bricks_small.json | 7 - .../blockstates/quenched_allay_tiles.json | 7 - .../hexcasting/blockstates/scroll_paper.json | 7 - .../blockstates/scroll_paper_lantern.json | 7 - .../assets/hexcasting/blockstates/slate.json | 122 ---------- .../blockstates/slate_amethyst_bricks.json | 15 -- .../slate_amethyst_bricks_small.json | 15 -- .../blockstates/slate_amethyst_pillar.json | 16 -- .../blockstates/slate_amethyst_tiles.json | 7 - .../hexcasting/blockstates/slate_block.json | 7 - .../hexcasting/blockstates/slate_bricks.json | 7 - .../blockstates/slate_bricks_small.json | 7 - .../hexcasting/blockstates/slate_pillar.json | 16 -- .../hexcasting/blockstates/slate_tiles.json | 7 - .../blockstates/stripped_edified_log.json | 16 -- .../blockstates/stripped_edified_wood.json | 16 -- .../models/block/akashic_bookshelf.json | 68 ------ .../models/block/akashic_bookshelf_1.json | 6 - .../models/block/akashic_bookshelf_2.json | 6 - .../models/block/akashic_bookshelf_3.json | 6 - .../models/block/akashic_bookshelf_4.json | 6 - .../models/block/akashic_bookshelf_empty.json | 8 - .../models/block/akashic_ligature.json | 6 - .../models/block/akashic_record.json | 87 -------- .../models/block/amethyst_dust_block.json | 6 - .../models/block/amethyst_edified_leaves.json | 7 - .../models/block/ancient_scroll_paper.json | 6 - .../block/ancient_scroll_paper_lantern.json | 8 - .../block/aventurine_edified_leaves.json | 7 - .../directrix/boolean/dim_false_down.json | 12 - .../directrix/boolean/dim_false_east.json | 12 - .../directrix/boolean/dim_false_north.json | 12 - .../directrix/boolean/dim_false_south.json | 12 - .../directrix/boolean/dim_false_up.json | 12 - .../directrix/boolean/dim_false_west.json | 12 - .../directrix/boolean/dim_neither_down.json | 12 - .../directrix/boolean/dim_neither_east.json | 12 - .../directrix/boolean/dim_neither_north.json | 12 - .../directrix/boolean/dim_neither_south.json | 12 - .../directrix/boolean/dim_neither_up.json | 12 - .../directrix/boolean/dim_neither_west.json | 12 - .../directrix/boolean/dim_true_down.json | 12 - .../directrix/boolean/dim_true_east.json | 12 - .../directrix/boolean/dim_true_north.json | 12 - .../directrix/boolean/dim_true_south.json | 12 - .../circle/directrix/boolean/dim_true_up.json | 12 - .../directrix/boolean/dim_true_west.json | 12 - .../directrix/boolean/lit_false_down.json | 12 - .../directrix/boolean/lit_false_east.json | 12 - .../directrix/boolean/lit_false_north.json | 12 - .../directrix/boolean/lit_false_south.json | 12 - .../directrix/boolean/lit_false_up.json | 12 - .../directrix/boolean/lit_false_west.json | 12 - .../directrix/boolean/lit_neither_down.json | 12 - .../directrix/boolean/lit_neither_east.json | 12 - .../directrix/boolean/lit_neither_north.json | 12 - .../directrix/boolean/lit_neither_south.json | 12 - .../directrix/boolean/lit_neither_up.json | 12 - .../directrix/boolean/lit_neither_west.json | 12 - .../directrix/boolean/lit_true_down.json | 12 - .../directrix/boolean/lit_true_east.json | 12 - .../directrix/boolean/lit_true_north.json | 12 - .../directrix/boolean/lit_true_south.json | 12 - .../circle/directrix/boolean/lit_true_up.json | 12 - .../directrix/boolean/lit_true_west.json | 12 - .../circle/directrix/empty/dim_down.json | 12 - .../circle/directrix/empty/dim_east.json | 12 - .../circle/directrix/empty/dim_north.json | 12 - .../circle/directrix/empty/dim_south.json | 12 - .../block/circle/directrix/empty/dim_up.json | 12 - .../circle/directrix/empty/dim_west.json | 12 - .../circle/directrix/empty/lit_down.json | 12 - .../circle/directrix/empty/lit_east.json | 12 - .../circle/directrix/empty/lit_north.json | 12 - .../circle/directrix/empty/lit_south.json | 12 - .../block/circle/directrix/empty/lit_up.json | 12 - .../circle/directrix/empty/lit_west.json | 12 - .../directrix/redstone/dim_powered_down.json | 12 - .../directrix/redstone/dim_powered_east.json | 12 - .../directrix/redstone/dim_powered_north.json | 12 - .../directrix/redstone/dim_powered_south.json | 12 - .../directrix/redstone/dim_powered_up.json | 12 - .../directrix/redstone/dim_powered_west.json | 12 - .../redstone/dim_unpowered_down.json | 12 - .../redstone/dim_unpowered_east.json | 12 - .../redstone/dim_unpowered_north.json | 12 - .../redstone/dim_unpowered_south.json | 12 - .../directrix/redstone/dim_unpowered_up.json | 12 - .../redstone/dim_unpowered_west.json | 12 - .../directrix/redstone/lit_powered_down.json | 12 - .../directrix/redstone/lit_powered_east.json | 12 - .../directrix/redstone/lit_powered_north.json | 12 - .../directrix/redstone/lit_powered_south.json | 12 - .../directrix/redstone/lit_powered_up.json | 12 - .../directrix/redstone/lit_powered_west.json | 12 - .../redstone/lit_unpowered_down.json | 12 - .../redstone/lit_unpowered_east.json | 12 - .../redstone/lit_unpowered_north.json | 12 - .../redstone/lit_unpowered_south.json | 12 - .../directrix/redstone/lit_unpowered_up.json | 12 - .../redstone/lit_unpowered_west.json | 12 - .../block/circle/impetus/empty/dim_down.json | 12 - .../block/circle/impetus/empty/dim_east.json | 12 - .../block/circle/impetus/empty/dim_north.json | 12 - .../block/circle/impetus/empty/dim_south.json | 12 - .../block/circle/impetus/empty/dim_up.json | 12 - .../block/circle/impetus/empty/dim_west.json | 12 - .../block/circle/impetus/empty/lit_down.json | 12 - .../block/circle/impetus/empty/lit_east.json | 12 - .../block/circle/impetus/empty/lit_north.json | 12 - .../block/circle/impetus/empty/lit_south.json | 12 - .../block/circle/impetus/empty/lit_up.json | 12 - .../block/circle/impetus/empty/lit_west.json | 12 - .../block/circle/impetus/look/dim_down.json | 12 - .../block/circle/impetus/look/dim_east.json | 12 - .../block/circle/impetus/look/dim_north.json | 12 - .../block/circle/impetus/look/dim_south.json | 12 - .../block/circle/impetus/look/dim_up.json | 12 - .../block/circle/impetus/look/dim_west.json | 12 - .../block/circle/impetus/look/lit_down.json | 12 - .../block/circle/impetus/look/lit_east.json | 12 - .../block/circle/impetus/look/lit_north.json | 12 - .../block/circle/impetus/look/lit_south.json | 12 - .../block/circle/impetus/look/lit_up.json | 12 - .../block/circle/impetus/look/lit_west.json | 12 - .../circle/impetus/redstone/dim_down.json | 12 - .../circle/impetus/redstone/dim_east.json | 12 - .../circle/impetus/redstone/dim_north.json | 12 - .../circle/impetus/redstone/dim_south.json | 12 - .../block/circle/impetus/redstone/dim_up.json | 12 - .../circle/impetus/redstone/dim_west.json | 12 - .../circle/impetus/redstone/lit_down.json | 12 - .../circle/impetus/redstone/lit_east.json | 12 - .../circle/impetus/redstone/lit_north.json | 12 - .../circle/impetus/redstone/lit_south.json | 12 - .../block/circle/impetus/redstone/lit_up.json | 12 - .../circle/impetus/redstone/lit_west.json | 12 - .../circle/impetus/rightclick/dim_down.json | 12 - .../circle/impetus/rightclick/dim_east.json | 12 - .../circle/impetus/rightclick/dim_north.json | 12 - .../circle/impetus/rightclick/dim_south.json | 12 - .../circle/impetus/rightclick/dim_up.json | 12 - .../circle/impetus/rightclick/dim_west.json | 12 - .../circle/impetus/rightclick/lit_down.json | 12 - .../circle/impetus/rightclick/lit_east.json | 12 - .../circle/impetus/rightclick/lit_north.json | 12 - .../circle/impetus/rightclick/lit_south.json | 12 - .../circle/impetus/rightclick/lit_up.json | 12 - .../circle/impetus/rightclick/lit_west.json | 12 - .../models/block/citrine_edified_leaves.json | 7 - .../hexcasting/models/block/conjured.json | 6 - .../models/block/deco/amethyst_bricks.json | 6 - .../block/deco/amethyst_bricks_small.json | 6 - .../models/block/deco/amethyst_pillar.json | 8 - .../models/block/deco/amethyst_tiles.json | 6 - .../block/deco/quenched_allay_bricks_0.json | 6 - .../block/deco/quenched_allay_bricks_1.json | 6 - .../block/deco/quenched_allay_bricks_2.json | 6 - .../block/deco/quenched_allay_bricks_3.json | 6 - .../deco/quenched_allay_bricks_small_0.json | 6 - .../deco/quenched_allay_bricks_small_1.json | 6 - .../deco/quenched_allay_bricks_small_2.json | 6 - .../deco/quenched_allay_bricks_small_3.json | 6 - .../block/deco/quenched_allay_tiles_0.json | 6 - .../block/deco/quenched_allay_tiles_1.json | 6 - .../block/deco/quenched_allay_tiles_2.json | 6 - .../block/deco/quenched_allay_tiles_3.json | 6 - .../block/deco/slate_amethyst_bricks_0.json | 6 - .../block/deco/slate_amethyst_bricks_1.json | 6 - .../block/deco/slate_amethyst_bricks_2.json | 6 - .../deco/slate_amethyst_bricks_small_0.json | 6 - .../deco/slate_amethyst_bricks_small_1.json | 6 - .../deco/slate_amethyst_bricks_small_2.json | 6 - .../block/deco/slate_amethyst_tiles.json | 6 - .../models/block/deco/slate_bricks.json | 6 - .../models/block/deco/slate_bricks_small.json | 6 - .../models/block/deco/slate_tiles.json | 6 - .../models/block/edified_button.json | 6 - .../models/block/edified_button_pressed.json | 6 - .../block/edified_door_bottom_left.json | 8 - .../block/edified_door_bottom_left_open.json | 8 - .../block/edified_door_bottom_right.json | 8 - .../block/edified_door_bottom_right_open.json | 8 - .../models/block/edified_door_top_left.json | 8 - .../block/edified_door_top_left_open.json | 8 - .../models/block/edified_door_top_right.json | 8 - .../block/edified_door_top_right_open.json | 8 - .../models/block/edified_fence_gate.json | 6 - .../models/block/edified_fence_gate_open.json | 6 - .../models/block/edified_fence_gate_wall.json | 6 - .../block/edified_fence_gate_wall_open.json | 6 - .../models/block/edified_fence_post.json | 6 - .../models/block/edified_fence_side.json | 6 - .../hexcasting/models/block/edified_log.json | 7 - .../models/block/edified_log_amethyst.json | 7 - .../edified_log_amethyst_horizontal.json | 7 - .../models/block/edified_log_aventurine.json | 7 - .../edified_log_aventurine_horizontal.json | 7 - .../models/block/edified_log_citrine.json | 7 - .../block/edified_log_citrine_horizontal.json | 7 - .../models/block/edified_log_horizontal.json | 7 - .../models/block/edified_log_purple.json | 7 - .../block/edified_log_purple_horizontal.json | 7 - .../models/block/edified_panel.json | 6 - .../models/block/edified_planks.json | 6 - .../models/block/edified_planks_2.json | 6 - .../models/block/edified_planks_3.json | 6 - .../models/block/edified_pressure_plate.json | 6 - .../block/edified_pressure_plate_down.json | 6 - .../hexcasting/models/block/edified_slab.json | 8 - .../models/block/edified_slab_top.json | 8 - .../models/block/edified_stairs.json | 8 - .../models/block/edified_stairs_inner.json | 8 - .../models/block/edified_stairs_outer.json | 8 - .../hexcasting/models/block/edified_tile.json | 6 - .../models/block/edified_trapdoor_bottom.json | 7 - .../models/block/edified_trapdoor_open.json | 7 - .../models/block/edified_trapdoor_top.json | 7 - .../hexcasting/models/block/edified_wood.json | 7 - .../models/block/edified_wood_horizontal.json | 7 - .../models/block/quenched_allay.json | 6 - .../models/block/quenched_allay_0.json | 6 - .../models/block/quenched_allay_1.json | 6 - .../models/block/quenched_allay_2.json | 6 - .../models/block/quenched_allay_3.json | 6 - .../models/block/quenched_allay_bricks.json | 6 - .../block/quenched_allay_bricks_small.json | 6 - .../models/block/quenched_allay_tiles.json | 6 - .../hexcasting/models/block/scroll_paper.json | 6 - .../models/block/scroll_paper_lantern.json | 8 - .../models/block/slate_amethyst_pillar.json | 7 - .../slate_amethyst_pillar_horizontal.json | 7 - .../hexcasting/models/block/slate_block.json | 6 - .../hexcasting/models/block/slate_pillar.json | 7 - .../models/block/slate_pillar_horizontal.json | 7 - .../models/block/stripped_edified_log.json | 7 - .../stripped_edified_log_horizontal.json | 7 - .../models/block/stripped_edified_wood.json | 7 - .../stripped_edified_wood_horizontal.json | 7 - .../assets/hexcasting/models/item/abacus.json | 6 - .../models/item/akashic_bookshelf.json | 3 - .../models/item/akashic_ligature.json | 3 - .../models/item/akashic_record.json | 3 - .../models/item/amethyst_bricks.json | 3 - .../models/item/amethyst_bricks_small.json | 3 - .../hexcasting/models/item/amethyst_dust.json | 6 - .../models/item/amethyst_dust_block.json | 3 - .../models/item/amethyst_edified_leaves.json | 3 - .../models/item/amethyst_pillar.json | 3 - .../models/item/amethyst_sconce.json | 3 - .../models/item/amethyst_tiles.json | 3 - .../models/item/ancient_colorizer.json | 6 - .../models/item/ancient_cypher.json | 120 ---------- .../models/item/ancient_cypher_0_filled.json | 7 - .../models/item/ancient_cypher_1.json | 6 - .../models/item/ancient_cypher_1_filled.json | 7 - .../models/item/ancient_cypher_2.json | 6 - .../models/item/ancient_cypher_2_filled.json | 7 - .../models/item/ancient_cypher_3.json | 6 - .../models/item/ancient_cypher_3_filled.json | 7 - .../models/item/ancient_cypher_4.json | 6 - .../models/item/ancient_cypher_4_filled.json | 7 - .../models/item/ancient_cypher_5.json | 6 - .../models/item/ancient_cypher_5_filled.json | 7 - .../models/item/ancient_cypher_6.json | 6 - .../models/item/ancient_cypher_6_filled.json | 7 - .../models/item/ancient_cypher_7.json | 6 - .../models/item/ancient_cypher_7_filled.json | 7 - .../models/item/ancient_scroll_paper.json | 3 - .../item/ancient_scroll_paper_lantern.json | 3 - .../hexcasting/models/item/artifact.json | 120 ---------- .../models/item/artifact_0_filled.json | 7 - .../hexcasting/models/item/artifact_1.json | 6 - .../models/item/artifact_1_filled.json | 7 - .../hexcasting/models/item/artifact_2.json | 6 - .../models/item/artifact_2_filled.json | 7 - .../hexcasting/models/item/artifact_3.json | 6 - .../models/item/artifact_3_filled.json | 7 - .../hexcasting/models/item/artifact_4.json | 6 - .../models/item/artifact_4_filled.json | 7 - .../hexcasting/models/item/artifact_5.json | 6 - .../models/item/artifact_5_filled.json | 7 - .../hexcasting/models/item/artifact_6.json | 6 - .../models/item/artifact_6_filled.json | 7 - .../hexcasting/models/item/artifact_7.json | 6 - .../models/item/artifact_7_filled.json | 7 - .../item/aventurine_edified_leaves.json | 3 - .../hexcasting/models/item/battery.json | 179 --------------- .../models/item/charged_amethyst.json | 6 - .../hexcasting/models/item/cherry_staff.json | 6 - .../models/item/citrine_edified_leaves.json | 3 - .../models/item/conjured_block.json | 6 - .../models/item/conjured_light.json | 6 - .../models/item/creative_unlocker.json | 6 - .../assets/hexcasting/models/item/cypher.json | 120 ---------- .../models/item/cypher_0_filled.json | 7 - .../hexcasting/models/item/cypher_1.json | 6 - .../models/item/cypher_1_filled.json | 7 - .../hexcasting/models/item/cypher_2.json | 6 - .../models/item/cypher_2_filled.json | 7 - .../hexcasting/models/item/cypher_3.json | 6 - .../models/item/cypher_3_filled.json | 7 - .../hexcasting/models/item/cypher_4.json | 6 - .../models/item/cypher_4_filled.json | 7 - .../hexcasting/models/item/cypher_5.json | 6 - .../models/item/cypher_5_filled.json | 7 - .../hexcasting/models/item/cypher_6.json | 6 - .../models/item/cypher_6_filled.json | 7 - .../hexcasting/models/item/cypher_7.json | 6 - .../models/item/cypher_7_filled.json | 7 - .../models/item/default_colorizer.json | 6 - .../models/item/directrix/boolean.json | 3 - .../models/item/directrix/empty.json | 3 - .../models/item/directrix/redstone.json | 3 - .../models/item/dye_colorizer_black.json | 6 - .../models/item/dye_colorizer_blue.json | 6 - .../models/item/dye_colorizer_brown.json | 6 - .../models/item/dye_colorizer_cyan.json | 6 - .../models/item/dye_colorizer_gray.json | 6 - .../models/item/dye_colorizer_green.json | 6 - .../models/item/dye_colorizer_light_blue.json | 6 - .../models/item/dye_colorizer_light_gray.json | 6 - .../models/item/dye_colorizer_lime.json | 6 - .../models/item/dye_colorizer_magenta.json | 6 - .../models/item/dye_colorizer_orange.json | 6 - .../models/item/dye_colorizer_pink.json | 6 - .../models/item/dye_colorizer_purple.json | 6 - .../models/item/dye_colorizer_red.json | 6 - .../models/item/dye_colorizer_white.json | 6 - .../models/item/dye_colorizer_yellow.json | 6 - .../models/item/edified_button.json | 6 - .../hexcasting/models/item/edified_door.json | 6 - .../hexcasting/models/item/edified_fence.json | 3 - .../models/item/edified_fence_gate.json | 3 - .../hexcasting/models/item/edified_log.json | 3 - .../models/item/edified_log_amethyst.json | 3 - .../models/item/edified_log_aventurine.json | 3 - .../models/item/edified_log_citrine.json | 3 - .../models/item/edified_log_purple.json | 3 - .../hexcasting/models/item/edified_panel.json | 3 - .../models/item/edified_planks.json | 3 - .../models/item/edified_pressure_plate.json | 3 - .../hexcasting/models/item/edified_slab.json | 3 - .../models/item/edified_stairs.json | 3 - .../hexcasting/models/item/edified_tile.json | 3 - .../models/item/edified_trapdoor.json | 3 - .../hexcasting/models/item/edified_wood.json | 3 - .../assets/hexcasting/models/item/focus.json | 176 --------------- .../models/item/focus_0_filled.json | 7 - .../models/item/focus_0_sealed.json | 7 - .../hexcasting/models/item/focus_1.json | 6 - .../models/item/focus_1_filled.json | 7 - .../models/item/focus_1_sealed.json | 7 - .../hexcasting/models/item/focus_2.json | 6 - .../models/item/focus_2_filled.json | 7 - .../models/item/focus_2_sealed.json | 7 - .../hexcasting/models/item/focus_3.json | 6 - .../models/item/focus_3_filled.json | 7 - .../models/item/focus_3_sealed.json | 7 - .../hexcasting/models/item/focus_4.json | 6 - .../models/item/focus_4_filled.json | 7 - .../models/item/focus_4_sealed.json | 7 - .../hexcasting/models/item/focus_5.json | 6 - .../models/item/focus_5_filled.json | 7 - .../models/item/focus_5_sealed.json | 7 - .../hexcasting/models/item/focus_6.json | 6 - .../models/item/focus_6_filled.json | 7 - .../models/item/focus_6_sealed.json | 7 - .../hexcasting/models/item/focus_7.json | 6 - .../models/item/focus_7_filled.json | 7 - .../models/item/focus_7_sealed.json | 7 - .../hexcasting/models/item/impetus/empty.json | 3 - .../hexcasting/models/item/impetus/look.json | 3 - .../models/item/impetus/redstone.json | 3 - .../models/item/impetus/rightclick.json | 3 - .../models/item/jeweler_hammer.json | 6 - .../assets/hexcasting/models/item/lens.json | 20 -- .../hexcasting/models/item/lore_fragment.json | 6 - .../hexcasting/models/item/old_staff.json | 6 - .../models/item/patchouli_book.json | 6 - .../hexcasting/models/item/phial_large_0.json | 6 - .../hexcasting/models/item/phial_large_1.json | 6 - .../hexcasting/models/item/phial_large_2.json | 6 - .../hexcasting/models/item/phial_large_3.json | 6 - .../hexcasting/models/item/phial_large_4.json | 6 - .../models/item/phial_larger_0.json | 6 - .../models/item/phial_larger_1.json | 6 - .../models/item/phial_larger_2.json | 6 - .../models/item/phial_larger_3.json | 6 - .../models/item/phial_larger_4.json | 6 - .../models/item/phial_largest_0.json | 6 - .../models/item/phial_largest_1.json | 6 - .../models/item/phial_largest_2.json | 6 - .../models/item/phial_largest_3.json | 6 - .../models/item/phial_largest_4.json | 6 - .../models/item/phial_medium_0.json | 6 - .../models/item/phial_medium_1.json | 6 - .../models/item/phial_medium_2.json | 6 - .../models/item/phial_medium_3.json | 6 - .../models/item/phial_medium_4.json | 6 - .../hexcasting/models/item/phial_small_0.json | 6 - .../hexcasting/models/item/phial_small_1.json | 6 - .../hexcasting/models/item/phial_small_2.json | 6 - .../hexcasting/models/item/phial_small_3.json | 6 - .../hexcasting/models/item/phial_small_4.json | 6 - .../models/item/pride_colorizer_agender.json | 6 - .../models/item/pride_colorizer_aroace.json | 6 - .../item/pride_colorizer_aromantic.json | 6 - .../models/item/pride_colorizer_asexual.json | 6 - .../models/item/pride_colorizer_bisexual.json | 6 - .../models/item/pride_colorizer_demiboy.json | 6 - .../models/item/pride_colorizer_demigirl.json | 6 - .../models/item/pride_colorizer_gay.json | 6 - .../item/pride_colorizer_genderfluid.json | 6 - .../item/pride_colorizer_genderqueer.json | 6 - .../models/item/pride_colorizer_intersex.json | 6 - .../models/item/pride_colorizer_lesbian.json | 6 - .../item/pride_colorizer_nonbinary.json | 6 - .../item/pride_colorizer_pansexual.json | 6 - .../models/item/pride_colorizer_plural.json | 6 - .../item/pride_colorizer_transgender.json | 6 - .../models/item/quenched_allay.json | 28 --- .../models/item/quenched_allay_bricks.json | 28 --- .../item/quenched_allay_bricks_small.json | 28 --- .../models/item/quenched_allay_shard.json | 28 --- .../models/item/quenched_allay_tiles.json | 28 --- .../models/item/quenched_shard_0.json | 6 - .../models/item/quenched_shard_1.json | 6 - .../models/item/quenched_shard_2.json | 6 - .../models/item/quenched_shard_3.json | 6 - .../assets/hexcasting/models/item/scroll.json | 16 -- .../models/item/scroll_ancient_large.json | 6 - .../models/item/scroll_ancient_medium.json | 6 - .../models/item/scroll_ancient_small.json | 6 - .../hexcasting/models/item/scroll_medium.json | 16 -- .../hexcasting/models/item/scroll_paper.json | 3 - .../models/item/scroll_paper_lantern.json | 3 - .../models/item/scroll_pristine_large.json | 6 - .../models/item/scroll_pristine_medium.json | 6 - .../models/item/scroll_pristine_small.json | 6 - .../hexcasting/models/item/scroll_small.json | 16 -- .../assets/hexcasting/models/item/slate.json | 16 -- .../models/item/slate_amethyst_bricks.json | 3 - .../item/slate_amethyst_bricks_small.json | 3 - .../models/item/slate_amethyst_pillar.json | 3 - .../models/item/slate_amethyst_tiles.json | 3 - .../hexcasting/models/item/slate_blank.json | 6 - .../hexcasting/models/item/slate_block.json | 3 - .../hexcasting/models/item/slate_bricks.json | 3 - .../models/item/slate_bricks_small.json | 3 - .../hexcasting/models/item/slate_pillar.json | 3 - .../hexcasting/models/item/slate_tiles.json | 3 - .../hexcasting/models/item/slate_written.json | 6 - .../hexcasting/models/item/spellbook.json | 176 --------------- .../models/item/spellbook_0_filled.json | 7 - .../models/item/spellbook_0_sealed.json | 7 - .../hexcasting/models/item/spellbook_1.json | 6 - .../models/item/spellbook_1_filled.json | 7 - .../models/item/spellbook_1_sealed.json | 7 - .../hexcasting/models/item/spellbook_2.json | 6 - .../models/item/spellbook_2_filled.json | 7 - .../models/item/spellbook_2_sealed.json | 7 - .../hexcasting/models/item/spellbook_3.json | 6 - .../models/item/spellbook_3_filled.json | 7 - .../models/item/spellbook_3_sealed.json | 7 - .../hexcasting/models/item/spellbook_4.json | 6 - .../models/item/spellbook_4_filled.json | 7 - .../models/item/spellbook_4_sealed.json | 7 - .../hexcasting/models/item/spellbook_5.json | 6 - .../models/item/spellbook_5_filled.json | 7 - .../models/item/spellbook_5_sealed.json | 7 - .../hexcasting/models/item/spellbook_6.json | 6 - .../models/item/spellbook_6_filled.json | 7 - .../models/item/spellbook_6_sealed.json | 7 - .../hexcasting/models/item/spellbook_7.json | 6 - .../models/item/spellbook_7_filled.json | 7 - .../models/item/spellbook_7_sealed.json | 7 - .../hexcasting/models/item/staff/acacia.json | 6 - .../hexcasting/models/item/staff/bamboo.json | 6 - .../hexcasting/models/item/staff/birch.json | 6 - .../hexcasting/models/item/staff/cherry.json | 6 - .../hexcasting/models/item/staff/crimson.json | 6 - .../models/item/staff/dark_oak.json | 6 - .../hexcasting/models/item/staff/edified.json | 6 - .../hexcasting/models/item/staff/jungle.json | 6 - .../models/item/staff/mangrove.json | 6 - .../models/item/staff/mindsplice.json | 6 - .../hexcasting/models/item/staff/oak.json | 6 - .../models/item/staff/quenched.json | 28 --- .../models/item/staff/quenched_0.json | 6 - .../models/item/staff/quenched_1.json | 6 - .../models/item/staff/quenched_2.json | 6 - .../models/item/staff/quenched_3.json | 6 - .../hexcasting/models/item/staff/spruce.json | 6 - .../hexcasting/models/item/staff/warped.json | 6 - .../models/item/stripped_edified_log.json | 3 - .../models/item/stripped_edified_wood.json | 3 - .../hexcasting/models/item/sub_sandwich.json | 6 - .../hexcasting/models/item/thought_knot.json | 20 -- .../models/item/thought_knot_written.json | 7 - .../hexcasting/models/item/trinket.json | 120 ---------- .../models/item/trinket_0_filled.json | 7 - .../hexcasting/models/item/trinket_1.json | 6 - .../models/item/trinket_1_filled.json | 7 - .../hexcasting/models/item/trinket_2.json | 6 - .../models/item/trinket_2_filled.json | 7 - .../hexcasting/models/item/trinket_3.json | 6 - .../models/item/trinket_3_filled.json | 7 - .../hexcasting/models/item/trinket_4.json | 6 - .../models/item/trinket_4_filled.json | 7 - .../hexcasting/models/item/trinket_5.json | 6 - .../models/item/trinket_5_filled.json | 7 - .../hexcasting/models/item/trinket_6.json | 6 - .../models/item/trinket_6_filled.json | 7 - .../hexcasting/models/item/trinket_7.json | 6 - .../models/item/trinket_7_filled.json | 7 - .../models/item/uuid_colorizer.json | 6 - .../hexcasting/models/staff/acacia.json | 16 -- .../hexcasting/models/staff/bamboo.json | 16 -- .../assets/hexcasting/models/staff/birch.json | 16 -- .../hexcasting/models/staff/cherry.json | 16 -- .../hexcasting/models/staff/crimson.json | 16 -- .../hexcasting/models/staff/dark_oak.json | 16 -- .../hexcasting/models/staff/edified.json | 16 -- .../hexcasting/models/staff/jungle.json | 16 -- .../hexcasting/models/staff/mangrove.json | 16 -- .../hexcasting/models/staff/mindsplice.json | 16 -- .../assets/hexcasting/models/staff/oak.json | 16 -- .../hexcasting/models/staff/spruce.json | 16 -- .../hexcasting/models/staff/warped.json | 16 -- .../data/create/tags/block/brittle.json | 8 - .../data/forge/tags/item/dusts/amethyst.json | 5 - .../resources/data/forge/tags/item/gems.json | 5 - .../advancement/aaa_wasteful_cast.json | 32 --- .../hexcasting/advancement/aab_big_cast.json | 32 --- .../advancement/creative_unlocker.json | 36 --- .../hexcasting/advancement/enlightenment.json | 38 ---- .../data/hexcasting/advancement/lore.json | 32 --- .../advancement/lore/cardamom1.json | 25 --- .../advancement/lore/cardamom2.json | 25 --- .../advancement/lore/cardamom3.json | 25 --- .../advancement/lore/cardamom4.json | 25 --- .../advancement/lore/cardamom5.json | 25 --- .../advancement/lore/experiment1.json | 25 --- .../advancement/lore/experiment2.json | 25 --- .../advancement/lore/inventory.json | 25 --- .../hexcasting/advancement/opened_eyes.json | 33 --- .../recipes/brainsweep/akashic_record.json | 35 --- .../recipes/brainsweep/budding_amethyst.json | 35 --- .../recipes/brainsweep/directrix_boolean.json | 35 --- .../brainsweep/directrix_redstone.json | 35 --- .../recipes/brainsweep/impetus_look.json | 35 --- .../brainsweep/impetus_rightclick.json | 35 --- .../brainsweep/impetus_storedplayer.json | 35 --- .../recipes/brainsweep/quench_allay.json | 35 --- .../building_blocks/amethyst_bricks.json | 35 --- ...yst_bricks_from_amethyst_bricks_small.json | 35 --- ...yst_bricks_small_from_amethyst_bricks.json | 35 --- .../amethyst_dust_packing.json | 32 --- .../amethyst_dust_unpacking.json | 32 --- .../building_blocks/amethyst_pillar.json | 35 --- .../building_blocks/amethyst_tiles.json | 34 --- .../building_blocks/ancient_scroll_paper.json | 32 --- .../building_blocks/edified_fence.json | 32 --- .../building_blocks/edified_fence_gate.json | 32 --- .../building_blocks/edified_panel.json | 32 --- .../building_blocks/edified_planks.json | 32 --- .../recipes/building_blocks/edified_slab.json | 32 --- .../building_blocks/edified_stairs.json | 32 --- .../recipes/building_blocks/edified_tile.json | 32 --- .../recipes/building_blocks/edified_wood.json | 32 --- .../quenched_allay_bricks.json | 35 --- ...icks_from_quenched_allay_bricks_small.json | 35 --- ...icks_small_from_quenched_allay_bricks.json | 35 --- .../building_blocks/quenched_allay_tiles.json | 35 --- .../recipes/building_blocks/scroll_paper.json | 32 --- .../slate_amethyst_bricks.json | 35 --- .../slate_amethyst_bricks_small.json | 35 --- .../slate_amethyst_pillar.json | 35 --- .../building_blocks/slate_amethyst_tiles.json | 35 --- .../recipes/building_blocks/slate_block.json | 32 --- .../slate_block_from_slates.json | 32 --- .../recipes/building_blocks/slate_bricks.json | 35 --- .../slate_bricks_from_slate_bricks_small.json | 35 --- .../slate_bricks_small_from_slate_bricks.json | 35 --- .../recipes/building_blocks/slate_pillar.json | 35 --- .../recipes/building_blocks/slate_tiles.json | 35 --- .../stonecutting/amethyst_bricks.json | 33 --- .../stonecutting/amethyst_bricks_small.json | 33 --- .../stonecutting/amethyst_pillar.json | 33 --- .../stonecutting/amethyst_tiles.json | 32 --- .../stonecutting/quenched_allay_bricks.json | 33 --- .../quenched_allay_bricks_small.json | 33 --- .../stonecutting/quenched_allay_tiles.json | 33 --- .../stonecutting/slate_bricks.json | 33 --- .../stonecutting/slate_bricks_small.json | 33 --- .../stonecutting/slate_pillar.json | 33 --- .../stonecutting/slate_tiles.json | 33 --- .../stripped_edified_wood.json | 32 --- .../ageing_scroll_paper_lantern.json | 32 --- .../recipes/decorations/amethyst_sconce.json | 32 --- .../ancient_scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll.json | 32 --- .../recipes/decorations/scroll_medium.json | 32 --- .../decorations/scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll_small.json | 32 --- .../recipes/decorations/slate.json | 32 --- .../recipes/food/sub_sandwich.json | 32 --- .../recipes/misc/ancient_colorizer.json | 35 --- .../decompose_quenched_shard/charged.json | 32 --- .../misc/decompose_quenched_shard/dust.json | 32 --- .../misc/decompose_quenched_shard/shard.json | 32 --- .../recipes/misc/default_colorizer.json | 32 --- .../recipes/misc/dye_colorizer_black.json | 32 --- .../recipes/misc/dye_colorizer_blue.json | 32 --- .../recipes/misc/dye_colorizer_brown.json | 32 --- .../recipes/misc/dye_colorizer_cyan.json | 32 --- .../recipes/misc/dye_colorizer_gray.json | 32 --- .../recipes/misc/dye_colorizer_green.json | 32 --- .../misc/dye_colorizer_light_blue.json | 32 --- .../misc/dye_colorizer_light_gray.json | 32 --- .../recipes/misc/dye_colorizer_lime.json | 32 --- .../recipes/misc/dye_colorizer_magenta.json | 32 --- .../recipes/misc/dye_colorizer_orange.json | 32 --- .../recipes/misc/dye_colorizer_pink.json | 32 --- .../recipes/misc/dye_colorizer_purple.json | 32 --- .../recipes/misc/dye_colorizer_red.json | 32 --- .../recipes/misc/dye_colorizer_white.json | 32 --- .../recipes/misc/dye_colorizer_yellow.json | 32 --- .../recipes/misc/pride_colorizer_agender.json | 32 --- .../recipes/misc/pride_colorizer_aroace.json | 32 --- .../misc/pride_colorizer_aromantic.json | 32 --- .../recipes/misc/pride_colorizer_asexual.json | 32 --- .../misc/pride_colorizer_bisexual.json | 32 --- .../recipes/misc/pride_colorizer_demiboy.json | 32 --- .../misc/pride_colorizer_demigirl.json | 32 --- .../recipes/misc/pride_colorizer_gay.json | 32 --- .../misc/pride_colorizer_genderfluid.json | 32 --- .../misc/pride_colorizer_genderqueer.json | 32 --- .../misc/pride_colorizer_intersex.json | 32 --- .../recipes/misc/pride_colorizer_lesbian.json | 32 --- .../misc/pride_colorizer_nonbinary.json | 32 --- .../recipes/misc/pride_colorizer_plural.json | 32 --- .../misc/pride_colorizer_transgender.json | 32 --- .../recipes/misc/uuid_colorizer.json | 32 --- .../recipes/redstone/akashic_bookshelf.json | 35 --- .../recipes/redstone/akashic_ligature.json | 35 --- .../recipes/redstone/directrix/empty.json | 35 --- .../recipes/redstone/edified_button.json | 32 --- .../recipes/redstone/edified_door.json | 32 --- .../redstone/edified_pressure_plate.json | 32 --- .../recipes/redstone/edified_trapdoor.json | 32 --- .../recipes/redstone/impetus/empty.json | 35 --- .../advancement/recipes/tools/abacus.json | 32 --- .../advancement/recipes/tools/artifact.json | 32 --- .../advancement/recipes/tools/cypher.json | 32 --- .../advancement/recipes/tools/focus.json | 32 --- .../recipes/tools/focus_rotated.json | 32 --- .../recipes/tools/jeweler_hammer.json | 32 --- .../advancement/recipes/tools/lens.json | 32 --- .../advancement/recipes/tools/spellbook.json | 43 ---- .../recipes/tools/staff/acacia.json | 32 --- .../recipes/tools/staff/bamboo.json | 32 --- .../recipes/tools/staff/birch.json | 32 --- .../recipes/tools/staff/cherry.json | 32 --- .../recipes/tools/staff/crimson.json | 32 --- .../recipes/tools/staff/dark_oak.json | 32 --- .../recipes/tools/staff/edified.json | 32 --- .../recipes/tools/staff/jungle.json | 32 --- .../recipes/tools/staff/mangrove.json | 32 --- .../recipes/tools/staff/mindsplice.json | 32 --- .../advancement/recipes/tools/staff/oak.json | 32 --- .../recipes/tools/staff/quenched.json | 32 --- .../recipes/tools/staff/spruce.json | 32 --- .../recipes/tools/staff/warped.json | 32 --- .../recipes/tools/thought_knot.json | 32 --- .../advancement/recipes/tools/trinket.json | 32 --- .../data/hexcasting/advancement/root.json | 34 --- .../advancement/y_u_no_cast_angy.json | 26 --- .../data/hexcasting/damage_type/overcast.json | 5 - .../loot_modifiers/amethyst_cluster.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../cypher/minecraft/chests/ancient_city.json | 10 - .../minecraft/chests/desert_pyramid.json | 10 - .../minecraft/chests/jungle_temple.json | 10 - .../minecraft/chests/nether_bridge.json | 10 - .../minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_corridor.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../minecraft/chests/pillager_outpost.json | 10 - .../lore/minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_library.json | 10 - .../chests/village/village_desert_house.json | 10 - .../chests/village/village_plains_house.json | 10 - .../chests/village/village_savanna_house.json | 10 - .../chests/village/village_snowy_house.json | 10 - .../chests/village/village_taiga_house.json | 10 - .../minecraft/chests/woodland_mansion.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../scroll/minecraft/chests/ancient_city.json | 10 - .../minecraft/chests/bastion_other.json | 10 - .../minecraft/chests/bastion_treasure.json | 10 - .../minecraft/chests/desert_pyramid.json | 10 - .../minecraft/chests/end_city_treasure.json | 10 - .../minecraft/chests/jungle_temple.json | 10 - .../minecraft/chests/nether_bridge.json | 10 - .../minecraft/chests/pillager_outpost.json | 10 - .../minecraft/chests/shipwreck_map.json | 10 - .../minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_library.json | 10 - .../chests/village/village_cartographer.json | 10 - .../minecraft/chests/woodland_mansion.json | 10 - .../loot_table/blocks/akashic_bookshelf.json | 15 -- .../loot_table/blocks/akashic_ligature.json | 15 -- .../loot_table/blocks/akashic_record.json | 15 -- .../loot_table/blocks/amethyst_bricks.json | 15 -- .../blocks/amethyst_bricks_small.json | 15 -- .../blocks/amethyst_dust_block.json | 15 -- .../blocks/amethyst_edified_leaves.json | 41 ---- .../loot_table/blocks/amethyst_pillar.json | 15 -- .../loot_table/blocks/amethyst_sconce.json | 15 -- .../loot_table/blocks/amethyst_tiles.json | 15 -- .../blocks/ancient_scroll_paper.json | 15 -- .../blocks/ancient_scroll_paper_lantern.json | 15 -- .../blocks/aventurine_edified_leaves.json | 41 ---- .../blocks/citrine_edified_leaves.json | 41 ---- .../loot_table/blocks/directrix/boolean.json | 15 -- .../loot_table/blocks/directrix/empty.json | 15 -- .../loot_table/blocks/directrix/redstone.json | 15 -- .../loot_table/blocks/edified_button.json | 15 -- .../loot_table/blocks/edified_door.json | 24 -- .../loot_table/blocks/edified_fence.json | 15 -- .../loot_table/blocks/edified_fence_gate.json | 15 -- .../loot_table/blocks/edified_log.json | 15 -- .../blocks/edified_log_amethyst.json | 15 -- .../blocks/edified_log_aventurine.json | 15 -- .../blocks/edified_log_citrine.json | 15 -- .../loot_table/blocks/edified_log_purple.json | 15 -- .../loot_table/blocks/edified_panel.json | 15 -- .../loot_table/blocks/edified_planks.json | 15 -- .../blocks/edified_pressure_plate.json | 15 -- .../loot_table/blocks/edified_slab.json | 34 --- .../loot_table/blocks/edified_stairs.json | 15 -- .../loot_table/blocks/edified_tile.json | 15 -- .../loot_table/blocks/edified_trapdoor.json | 15 -- .../loot_table/blocks/edified_wood.json | 15 -- .../loot_table/blocks/impetus/empty.json | 15 -- .../loot_table/blocks/impetus/look.json | 15 -- .../loot_table/blocks/impetus/redstone.json | 15 -- .../loot_table/blocks/impetus/rightclick.json | 15 -- .../loot_table/blocks/quenched_allay.json | 69 ------ .../blocks/quenched_allay_bricks.json | 15 -- .../blocks/quenched_allay_bricks_small.json | 15 -- .../blocks/quenched_allay_tiles.json | 15 -- .../loot_table/blocks/scroll_paper.json | 15 -- .../blocks/scroll_paper_lantern.json | 15 -- .../hexcasting/loot_table/blocks/slate.json | 24 -- .../blocks/slate_amethyst_bricks.json | 15 -- .../blocks/slate_amethyst_bricks_small.json | 15 -- .../blocks/slate_amethyst_pillar.json | 15 -- .../blocks/slate_amethyst_tiles.json | 15 -- .../loot_table/blocks/slate_block.json | 15 -- .../loot_table/blocks/slate_bricks.json | 15 -- .../loot_table/blocks/slate_bricks_small.json | 15 -- .../loot_table/blocks/slate_pillar.json | 15 -- .../loot_table/blocks/slate_tiles.json | 15 -- .../blocks/stripped_edified_log.json | 15 -- .../blocks/stripped_edified_wood.json | 15 -- .../loot_table/inject/amethyst_cluster.json | 211 ------------------ .../data/hexcasting/recipe/abacus.json | 24 -- .../recipe/ageing_scroll_paper_lantern.json | 37 --- .../hexcasting/recipe/akashic_bookshelf.json | 24 -- .../hexcasting/recipe/akashic_ligature.json | 30 --- .../hexcasting/recipe/amethyst_bricks.json | 18 -- ...yst_bricks_from_amethyst_bricks_small.json | 12 - ...yst_bricks_small_from_amethyst_bricks.json | 12 - .../recipe/amethyst_dust_packing.json | 17 -- .../recipe/amethyst_dust_unpacking.json | 13 -- .../hexcasting/recipe/amethyst_pillar.json | 18 -- .../hexcasting/recipe/amethyst_sconce.json | 20 -- .../hexcasting/recipe/amethyst_tiles.json | 18 -- .../hexcasting/recipe/ancient_colorizer.json | 21 -- .../recipe/ancient_scroll_paper.json | 37 --- .../recipe/ancient_scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/artifact.json | 24 -- .../recipe/brainsweep/akashic_record.json | 16 -- .../recipe/brainsweep/budding_amethyst.json | 15 -- .../recipe/brainsweep/directrix_boolean.json | 21 -- .../recipe/brainsweep/directrix_redstone.json | 21 -- .../recipe/brainsweep/impetus_look.json | 20 -- .../recipe/brainsweep/impetus_rightclick.json | 20 -- .../brainsweep/impetus_storedplayer.json | 21 -- .../recipe/brainsweep/quench_allay.json | 15 -- .../data/hexcasting/recipe/cypher.json | 21 -- .../decompose_quenched_shard/charged.json | 16 -- .../recipe/decompose_quenched_shard/dust.json | 16 -- .../decompose_quenched_shard/shard.json | 16 -- .../hexcasting/recipe/default_colorizer.json | 21 -- .../hexcasting/recipe/directrix/empty.json | 27 --- .../recipe/dye_colorizer_black.json | 21 -- .../hexcasting/recipe/dye_colorizer_blue.json | 21 -- .../recipe/dye_colorizer_brown.json | 21 -- .../hexcasting/recipe/dye_colorizer_cyan.json | 21 -- .../hexcasting/recipe/dye_colorizer_gray.json | 21 -- .../recipe/dye_colorizer_green.json | 21 -- .../recipe/dye_colorizer_light_blue.json | 21 -- .../recipe/dye_colorizer_light_gray.json | 21 -- .../hexcasting/recipe/dye_colorizer_lime.json | 21 -- .../recipe/dye_colorizer_magenta.json | 21 -- .../recipe/dye_colorizer_orange.json | 21 -- .../hexcasting/recipe/dye_colorizer_pink.json | 21 -- .../recipe/dye_colorizer_purple.json | 21 -- .../hexcasting/recipe/dye_colorizer_red.json | 21 -- .../recipe/dye_colorizer_white.json | 21 -- .../recipe/dye_colorizer_yellow.json | 21 -- .../hexcasting/recipe/dynamicseal_focus.json | 4 - .../recipe/dynamicseal_spellbook.json | 4 - .../hexcasting/recipe/edified_button.json | 13 -- .../data/hexcasting/recipe/edified_door.json | 18 -- .../data/hexcasting/recipe/edified_fence.json | 20 -- .../hexcasting/recipe/edified_fence_gate.json | 20 -- .../data/hexcasting/recipe/edified_panel.json | 21 -- .../hexcasting/recipe/edified_planks.json | 13 -- .../recipe/edified_pressure_plate.json | 16 -- .../data/hexcasting/recipe/edified_slab.json | 16 -- .../hexcasting/recipe/edified_stairs.json | 18 -- .../data/hexcasting/recipe/edified_tile.json | 18 -- .../hexcasting/recipe/edified_trapdoor.json | 17 -- .../data/hexcasting/recipe/edified_wood.json | 17 -- .../data/hexcasting/recipe/focus.json | 27 --- .../data/hexcasting/recipe/focus_rotated.json | 27 --- .../data/hexcasting/recipe/impetus/empty.json | 27 --- .../hexcasting/recipe/jeweler_hammer.json | 32 --- .../data/hexcasting/recipe/lens.json | 21 -- .../recipe/pride_colorizer_agender.json | 21 -- .../recipe/pride_colorizer_aroace.json | 21 -- .../recipe/pride_colorizer_aromantic.json | 21 -- .../recipe/pride_colorizer_asexual.json | 21 -- .../recipe/pride_colorizer_bisexual.json | 21 -- .../recipe/pride_colorizer_demiboy.json | 21 -- .../recipe/pride_colorizer_demigirl.json | 21 -- .../recipe/pride_colorizer_gay.json | 21 -- .../recipe/pride_colorizer_genderfluid.json | 21 -- .../recipe/pride_colorizer_genderqueer.json | 21 -- .../recipe/pride_colorizer_intersex.json | 21 -- .../recipe/pride_colorizer_lesbian.json | 21 -- .../recipe/pride_colorizer_nonbinary.json | 21 -- .../recipe/pride_colorizer_plural.json | 21 -- .../recipe/pride_colorizer_transgender.json | 21 -- .../recipe/quenched_allay_bricks.json | 18 -- ...icks_from_quenched_allay_bricks_small.json | 12 - ...icks_small_from_quenched_allay_bricks.json | 12 - .../recipe/quenched_allay_tiles.json | 18 -- .../data/hexcasting/recipe/scroll.json | 21 -- .../data/hexcasting/recipe/scroll_medium.json | 21 -- .../data/hexcasting/recipe/scroll_paper.json | 24 -- .../recipe/scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/scroll_small.json | 20 -- .../data/hexcasting/recipe/slate.json | 20 -- .../recipe/slate_amethyst_bricks.json | 16 -- .../recipe/slate_amethyst_bricks_small.json | 16 -- .../recipe/slate_amethyst_pillar.json | 16 -- .../recipe/slate_amethyst_tiles.json | 16 -- .../data/hexcasting/recipe/slate_block.json | 24 -- .../recipe/slate_block_from_slates.json | 17 -- .../data/hexcasting/recipe/slate_bricks.json | 18 -- .../slate_bricks_from_slate_bricks_small.json | 12 - .../slate_bricks_small_from_slate_bricks.json | 12 - .../data/hexcasting/recipe/slate_pillar.json | 18 -- .../data/hexcasting/recipe/slate_tiles.json | 18 -- .../data/hexcasting/recipe/spellbook.json | 27 --- .../data/hexcasting/recipe/staff/acacia.json | 24 -- .../data/hexcasting/recipe/staff/bamboo.json | 24 -- .../data/hexcasting/recipe/staff/birch.json | 24 -- .../data/hexcasting/recipe/staff/cherry.json | 24 -- .../data/hexcasting/recipe/staff/crimson.json | 24 -- .../hexcasting/recipe/staff/dark_oak.json | 24 -- .../data/hexcasting/recipe/staff/edified.json | 24 -- .../data/hexcasting/recipe/staff/jungle.json | 24 -- .../hexcasting/recipe/staff/mangrove.json | 24 -- .../hexcasting/recipe/staff/mindsplice.json | 24 -- .../data/hexcasting/recipe/staff/oak.json | 24 -- .../hexcasting/recipe/staff/quenched.json | 24 -- .../data/hexcasting/recipe/staff/spruce.json | 24 -- .../data/hexcasting/recipe/staff/warped.json | 24 -- .../recipe/stonecutting/amethyst_bricks.json | 8 - .../stonecutting/amethyst_bricks_small.json | 8 - .../recipe/stonecutting/amethyst_pillar.json | 8 - .../recipe/stonecutting/amethyst_tiles.json | 10 - .../stonecutting/quenched_allay_bricks.json | 8 - .../quenched_allay_bricks_small.json | 8 - .../stonecutting/quenched_allay_tiles.json | 8 - .../recipe/stonecutting/slate_bricks.json | 8 - .../stonecutting/slate_bricks_small.json | 8 - .../recipe/stonecutting/slate_pillar.json | 8 - .../recipe/stonecutting/slate_tiles.json | 8 - .../recipe/stripped_edified_wood.json | 17 -- .../data/hexcasting/recipe/sub_sandwich.json | 27 --- .../data/hexcasting/recipe/thought_knot.json | 16 -- .../data/hexcasting/recipe/trinket.json | 21 -- .../hexcasting/recipe/uuid_colorizer.json | 24 -- .../tags/block/amethyst_blocks.json | 9 - .../block/brainswept_circle_components.json | 6 - .../tags/block/cheap_to_break_block.json | 6 - .../hexcasting/tags/block/directrices.json | 6 - .../hexcasting/tags/block/edified_logs.json | 12 - .../hexcasting/tags/block/edified_planks.json | 7 - .../data/hexcasting/tags/block/impeti.json | 7 - .../tags/block/quenched_allay_blocks.json | 8 - .../hexcasting/tags/block/slate_blocks.json | 9 - .../hexcasting/tags/block/water_plants.json | 8 - .../action/can_start_enlighten.json | 18 -- .../hexcasting/action/per_world_pattern.json | 18 -- .../action/requires_enlightenment.json | 18 -- .../hexcasting/tags/item/amethyst_blocks.json | 9 - .../item/brainswept_circle_components.json | 6 - .../hexcasting/tags/item/directrices.json | 6 - .../hexcasting/tags/item/edified_logs.json | 12 - .../hexcasting/tags/item/edified_planks.json | 7 - .../tags/item/grants_root_advancement.json | 8 - .../data/hexcasting/tags/item/impeti.json | 7 - .../data/hexcasting/tags/item/phial_base.json | 5 - .../tags/item/quenched_allay_blocks.json | 8 - .../hexcasting/tags/item/seal_materials.json | 5 - .../hexcasting/tags/item/slate_blocks.json | 9 - .../data/hexcasting/tags/item/staves.json | 18 -- .../data/minecraft/tags/block/buttons.json | 5 - .../tags/block/crystal_sound_blocks.json | 8 - .../data/minecraft/tags/block/doors.json | 5 - .../minecraft/tags/block/fence_gates.json | 5 - .../data/minecraft/tags/block/fences.json | 5 - .../data/minecraft/tags/block/leaves.json | 7 - .../data/minecraft/tags/block/logs.json | 12 - .../minecraft/tags/block/logs_that_burn.json | 12 - .../minecraft/tags/block/mineable/axe.json | 25 --- .../minecraft/tags/block/mineable/hoe.json | 7 - .../tags/block/mineable/pickaxe.json | 30 --- .../minecraft/tags/block/mineable/shovel.json | 5 - .../data/minecraft/tags/block/planks.json | 7 - .../minecraft/tags/block/pressure_plates.json | 5 - .../data/minecraft/tags/block/slabs.json | 5 - .../data/minecraft/tags/block/stairs.json | 5 - .../data/minecraft/tags/block/trapdoors.json | 5 - .../tags/block/unstable_bottom_center.json | 5 - .../minecraft/tags/block/wooden_buttons.json | 5 - .../minecraft/tags/block/wooden_doors.json | 5 - .../minecraft/tags/block/wooden_fences.json | 6 - .../tags/block/wooden_pressure_plates.json | 5 - .../minecraft/tags/block/wooden_slabs.json | 5 - .../minecraft/tags/block/wooden_stairs.json | 5 - .../tags/block/wooden_trapdoors.json | 5 - .../tags/damage_type/bypasses_armor.json | 5 - .../tags/damage_type/bypasses_effects.json | 5 - .../tags/damage_type/bypasses_shield.json | 5 - .../data/minecraft/tags/item/buttons.json | 5 - .../data/minecraft/tags/item/doors.json | 5 - .../data/minecraft/tags/item/leaves.json | 7 - .../data/minecraft/tags/item/logs.json | 12 - .../minecraft/tags/item/logs_that_burn.json | 12 - .../data/minecraft/tags/item/planks.json | 7 - .../data/minecraft/tags/item/slabs.json | 5 - .../data/minecraft/tags/item/trapdoors.json | 5 - .../minecraft/tags/item/wooden_buttons.json | 5 - .../minecraft/tags/item/wooden_doors.json | 5 - .../tags/item/wooden_pressure_plates.json | 5 - .../minecraft/tags/item/wooden_slabs.json | 5 - .../minecraft/tags/item/wooden_trapdoors.json | 5 - .../loot_modifiers/global_loot_modifiers.json | 44 ---- .../hexcasting/api/casting/iota/ListIota.java | 36 ++- .../hexcasting/api/casting/math/HexPattern.kt | 3 + .../datagen/recipe/HexplatRecipes.java | 15 +- .../en_us/entries/items/ancient_cyphers.json | 2 +- .../en_us/entries/items/creative_items.json | 2 +- Fabric/build.gradle | 2 +- .../data/c/tags/item/amethyst_dusts.json | 5 - .../resources/data/c/tags/item/gems.json | 5 - .../data/create/tags/block/brittle.json | 8 - .../recipes/brainsweep/akashic_record.json | 35 --- .../recipes/brainsweep/budding_amethyst.json | 35 --- .../recipes/brainsweep/directrix_boolean.json | 35 --- .../brainsweep/directrix_redstone.json | 35 --- .../recipes/brainsweep/impetus_look.json | 35 --- .../brainsweep/impetus_rightclick.json | 35 --- .../brainsweep/impetus_storedplayer.json | 35 --- .../recipes/brainsweep/quench_allay.json | 35 --- .../amethyst_dust_packing.json | 32 --- .../amethyst_dust_unpacking.json | 32 --- .../building_blocks/amethyst_tiles.json | 32 --- .../building_blocks/ancient_scroll_paper.json | 32 --- .../building_blocks/edified_fence.json | 32 --- .../building_blocks/edified_fence_gate.json | 32 --- .../building_blocks/edified_panel.json | 32 --- .../building_blocks/edified_planks.json | 32 --- .../recipes/building_blocks/edified_slab.json | 32 --- .../building_blocks/edified_stairs.json | 32 --- .../recipes/building_blocks/edified_tile.json | 32 --- .../recipes/building_blocks/edified_wood.json | 32 --- .../recipes/building_blocks/scroll_paper.json | 32 --- .../recipes/building_blocks/slate_block.json | 32 --- .../slate_block_from_slates.json | 32 --- .../stonecutting/amethyst_tiles.json | 32 --- .../stripped_edified_wood.json | 32 --- .../ageing_scroll_paper_lantern.json | 32 --- .../recipes/decorations/amethyst_sconce.json | 32 --- .../ancient_scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll.json | 32 --- .../recipes/decorations/scroll_medium.json | 32 --- .../decorations/scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll_small.json | 32 --- .../recipes/decorations/slate.json | 32 --- .../recipes/food/sub_sandwich.json | 32 --- .../decompose_quenched_shard/charged.json | 32 --- .../misc/decompose_quenched_shard/dust.json | 32 --- .../misc/decompose_quenched_shard/shard.json | 32 --- .../recipes/misc/default_colorizer.json | 32 --- .../recipes/misc/dye_colorizer_black.json | 32 --- .../recipes/misc/dye_colorizer_blue.json | 32 --- .../recipes/misc/dye_colorizer_brown.json | 32 --- .../recipes/misc/dye_colorizer_cyan.json | 32 --- .../recipes/misc/dye_colorizer_gray.json | 32 --- .../recipes/misc/dye_colorizer_green.json | 32 --- .../misc/dye_colorizer_light_blue.json | 32 --- .../misc/dye_colorizer_light_gray.json | 32 --- .../recipes/misc/dye_colorizer_lime.json | 32 --- .../recipes/misc/dye_colorizer_magenta.json | 32 --- .../recipes/misc/dye_colorizer_orange.json | 32 --- .../recipes/misc/dye_colorizer_pink.json | 32 --- .../recipes/misc/dye_colorizer_purple.json | 32 --- .../recipes/misc/dye_colorizer_red.json | 32 --- .../recipes/misc/dye_colorizer_white.json | 32 --- .../recipes/misc/dye_colorizer_yellow.json | 32 --- .../recipes/misc/pride_colorizer_agender.json | 32 --- .../recipes/misc/pride_colorizer_aroace.json | 32 --- .../misc/pride_colorizer_aromantic.json | 32 --- .../recipes/misc/pride_colorizer_asexual.json | 32 --- .../misc/pride_colorizer_bisexual.json | 32 --- .../recipes/misc/pride_colorizer_demiboy.json | 32 --- .../misc/pride_colorizer_demigirl.json | 32 --- .../recipes/misc/pride_colorizer_gay.json | 32 --- .../misc/pride_colorizer_genderfluid.json | 32 --- .../misc/pride_colorizer_genderqueer.json | 32 --- .../misc/pride_colorizer_intersex.json | 32 --- .../recipes/misc/pride_colorizer_lesbian.json | 32 --- .../misc/pride_colorizer_nonbinary.json | 32 --- .../recipes/misc/pride_colorizer_plural.json | 32 --- .../misc/pride_colorizer_transgender.json | 32 --- .../recipes/misc/uuid_colorizer.json | 32 --- .../recipes/redstone/akashic_bookshelf.json | 35 --- .../recipes/redstone/akashic_ligature.json | 35 --- .../recipes/redstone/directrix/empty.json | 35 --- .../recipes/redstone/edified_button.json | 32 --- .../recipes/redstone/edified_door.json | 32 --- .../redstone/edified_pressure_plate.json | 32 --- .../recipes/redstone/edified_trapdoor.json | 32 --- .../recipes/redstone/impetus/empty.json | 35 --- .../advancement/recipes/tools/abacus.json | 32 --- .../advancement/recipes/tools/artifact.json | 32 --- .../advancement/recipes/tools/cypher.json | 32 --- .../advancement/recipes/tools/focus.json | 32 --- .../recipes/tools/focus_rotated.json | 32 --- .../recipes/tools/jeweler_hammer.json | 32 --- .../advancement/recipes/tools/lens.json | 32 --- .../advancement/recipes/tools/spellbook.json | 43 ---- .../recipes/tools/staff/acacia.json | 32 --- .../recipes/tools/staff/bamboo.json | 32 --- .../recipes/tools/staff/birch.json | 32 --- .../recipes/tools/staff/cherry.json | 32 --- .../recipes/tools/staff/crimson.json | 32 --- .../recipes/tools/staff/dark_oak.json | 32 --- .../recipes/tools/staff/edified.json | 32 --- .../recipes/tools/staff/jungle.json | 32 --- .../recipes/tools/staff/mangrove.json | 32 --- .../recipes/tools/staff/mindsplice.json | 32 --- .../advancement/recipes/tools/staff/oak.json | 32 --- .../recipes/tools/staff/quenched.json | 32 --- .../recipes/tools/staff/spruce.json | 32 --- .../recipes/tools/staff/warped.json | 32 --- .../recipes/tools/thought_knot.json | 32 --- .../advancement/recipes/tools/trinket.json | 32 --- .../loot_table/blocks/akashic_bookshelf.json | 15 -- .../loot_table/blocks/akashic_ligature.json | 15 -- .../loot_table/blocks/akashic_record.json | 15 -- .../loot_table/blocks/amethyst_bricks.json | 15 -- .../blocks/amethyst_bricks_small.json | 15 -- .../blocks/amethyst_dust_block.json | 15 -- .../blocks/amethyst_edified_leaves.json | 54 ----- .../loot_table/blocks/amethyst_pillar.json | 15 -- .../loot_table/blocks/amethyst_sconce.json | 15 -- .../loot_table/blocks/amethyst_tiles.json | 15 -- .../blocks/ancient_scroll_paper.json | 15 -- .../blocks/ancient_scroll_paper_lantern.json | 15 -- .../blocks/aventurine_edified_leaves.json | 54 ----- .../blocks/citrine_edified_leaves.json | 54 ----- .../loot_table/blocks/directrix/boolean.json | 15 -- .../loot_table/blocks/directrix/empty.json | 15 -- .../loot_table/blocks/directrix/redstone.json | 15 -- .../loot_table/blocks/edified_button.json | 15 -- .../loot_table/blocks/edified_door.json | 24 -- .../loot_table/blocks/edified_fence.json | 15 -- .../loot_table/blocks/edified_fence_gate.json | 15 -- .../loot_table/blocks/edified_log.json | 15 -- .../blocks/edified_log_amethyst.json | 15 -- .../blocks/edified_log_aventurine.json | 15 -- .../blocks/edified_log_citrine.json | 15 -- .../loot_table/blocks/edified_log_purple.json | 15 -- .../loot_table/blocks/edified_panel.json | 15 -- .../loot_table/blocks/edified_planks.json | 15 -- .../blocks/edified_pressure_plate.json | 15 -- .../loot_table/blocks/edified_slab.json | 34 --- .../loot_table/blocks/edified_stairs.json | 15 -- .../loot_table/blocks/edified_tile.json | 15 -- .../loot_table/blocks/edified_trapdoor.json | 15 -- .../loot_table/blocks/edified_wood.json | 15 -- .../loot_table/blocks/impetus/empty.json | 15 -- .../loot_table/blocks/impetus/look.json | 15 -- .../loot_table/blocks/impetus/redstone.json | 15 -- .../loot_table/blocks/impetus/rightclick.json | 15 -- .../loot_table/blocks/quenched_allay.json | 69 ------ .../blocks/quenched_allay_bricks.json | 15 -- .../blocks/quenched_allay_bricks_small.json | 15 -- .../blocks/quenched_allay_tiles.json | 15 -- .../loot_table/blocks/scroll_paper.json | 15 -- .../blocks/scroll_paper_lantern.json | 15 -- .../hexcasting/loot_table/blocks/slate.json | 24 -- .../blocks/slate_amethyst_bricks.json | 15 -- .../blocks/slate_amethyst_bricks_small.json | 15 -- .../blocks/slate_amethyst_pillar.json | 15 -- .../blocks/slate_amethyst_tiles.json | 15 -- .../loot_table/blocks/slate_block.json | 15 -- .../loot_table/blocks/slate_bricks.json | 15 -- .../loot_table/blocks/slate_bricks_small.json | 15 -- .../loot_table/blocks/slate_pillar.json | 15 -- .../loot_table/blocks/slate_tiles.json | 15 -- .../blocks/stripped_edified_log.json | 15 -- .../blocks/stripped_edified_wood.json | 15 -- .../loot_table/inject/amethyst_cluster.json | 211 ------------------ .../data/hexcasting/recipe/abacus.json | 24 -- .../recipe/ageing_scroll_paper_lantern.json | 45 ---- .../hexcasting/recipe/akashic_bookshelf.json | 24 -- .../hexcasting/recipe/akashic_ligature.json | 30 --- .../recipe/amethyst_dust_packing.json | 17 -- .../recipe/amethyst_dust_unpacking.json | 13 -- .../hexcasting/recipe/amethyst_sconce.json | 25 --- .../hexcasting/recipe/amethyst_tiles.json | 24 -- .../recipe/ancient_scroll_paper.json | 45 ---- .../recipe/ancient_scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/artifact.json | 29 --- .../recipe/brainsweep/akashic_record.json | 16 -- .../recipe/brainsweep/budding_amethyst.json | 15 -- .../recipe/brainsweep/directrix_boolean.json | 21 -- .../recipe/brainsweep/directrix_redstone.json | 21 -- .../recipe/brainsweep/impetus_look.json | 20 -- .../recipe/brainsweep/impetus_rightclick.json | 20 -- .../brainsweep/impetus_storedplayer.json | 21 -- .../recipe/brainsweep/quench_allay.json | 15 -- .../data/hexcasting/recipe/cypher.json | 26 --- .../decompose_quenched_shard/charged.json | 16 -- .../recipe/decompose_quenched_shard/dust.json | 16 -- .../decompose_quenched_shard/shard.json | 16 -- .../hexcasting/recipe/default_colorizer.json | 24 -- .../hexcasting/recipe/directrix/empty.json | 27 --- .../recipe/dye_colorizer_black.json | 21 -- .../hexcasting/recipe/dye_colorizer_blue.json | 21 -- .../recipe/dye_colorizer_brown.json | 21 -- .../hexcasting/recipe/dye_colorizer_cyan.json | 21 -- .../hexcasting/recipe/dye_colorizer_gray.json | 21 -- .../recipe/dye_colorizer_green.json | 21 -- .../recipe/dye_colorizer_light_blue.json | 21 -- .../recipe/dye_colorizer_light_gray.json | 21 -- .../hexcasting/recipe/dye_colorizer_lime.json | 21 -- .../recipe/dye_colorizer_magenta.json | 21 -- .../recipe/dye_colorizer_orange.json | 21 -- .../hexcasting/recipe/dye_colorizer_pink.json | 21 -- .../recipe/dye_colorizer_purple.json | 21 -- .../hexcasting/recipe/dye_colorizer_red.json | 21 -- .../recipe/dye_colorizer_white.json | 21 -- .../recipe/dye_colorizer_yellow.json | 21 -- .../hexcasting/recipe/dynamicseal_focus.json | 4 - .../recipe/dynamicseal_spellbook.json | 4 - .../hexcasting/recipe/edified_button.json | 13 -- .../data/hexcasting/recipe/edified_door.json | 18 -- .../data/hexcasting/recipe/edified_fence.json | 20 -- .../hexcasting/recipe/edified_fence_gate.json | 20 -- .../data/hexcasting/recipe/edified_panel.json | 21 -- .../hexcasting/recipe/edified_planks.json | 13 -- .../recipe/edified_pressure_plate.json | 16 -- .../data/hexcasting/recipe/edified_slab.json | 16 -- .../hexcasting/recipe/edified_stairs.json | 18 -- .../data/hexcasting/recipe/edified_tile.json | 18 -- .../hexcasting/recipe/edified_trapdoor.json | 17 -- .../data/hexcasting/recipe/edified_wood.json | 17 -- .../data/hexcasting/recipe/focus.json | 32 --- .../data/hexcasting/recipe/focus_rotated.json | 32 --- .../data/hexcasting/recipe/impetus/empty.json | 27 --- .../hexcasting/recipe/jeweler_hammer.json | 42 ---- .../data/hexcasting/recipe/lens.json | 21 -- .../recipe/pride_colorizer_agender.json | 21 -- .../recipe/pride_colorizer_aroace.json | 21 -- .../recipe/pride_colorizer_aromantic.json | 21 -- .../recipe/pride_colorizer_asexual.json | 21 -- .../recipe/pride_colorizer_bisexual.json | 21 -- .../recipe/pride_colorizer_demiboy.json | 21 -- .../recipe/pride_colorizer_demigirl.json | 21 -- .../recipe/pride_colorizer_gay.json | 21 -- .../recipe/pride_colorizer_genderfluid.json | 21 -- .../recipe/pride_colorizer_genderqueer.json | 21 -- .../recipe/pride_colorizer_intersex.json | 21 -- .../recipe/pride_colorizer_lesbian.json | 21 -- .../recipe/pride_colorizer_nonbinary.json | 21 -- .../recipe/pride_colorizer_plural.json | 21 -- .../recipe/pride_colorizer_transgender.json | 21 -- .../data/hexcasting/recipe/scroll.json | 21 -- .../data/hexcasting/recipe/scroll_medium.json | 21 -- .../data/hexcasting/recipe/scroll_paper.json | 24 -- .../recipe/scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/scroll_small.json | 20 -- .../data/hexcasting/recipe/slate.json | 20 -- .../data/hexcasting/recipe/slate_block.json | 24 -- .../recipe/slate_block_from_slates.json | 17 -- .../data/hexcasting/recipe/spellbook.json | 32 --- .../data/hexcasting/recipe/staff/acacia.json | 24 -- .../data/hexcasting/recipe/staff/bamboo.json | 24 -- .../data/hexcasting/recipe/staff/birch.json | 24 -- .../data/hexcasting/recipe/staff/cherry.json | 24 -- .../data/hexcasting/recipe/staff/crimson.json | 24 -- .../hexcasting/recipe/staff/dark_oak.json | 24 -- .../data/hexcasting/recipe/staff/edified.json | 24 -- .../data/hexcasting/recipe/staff/jungle.json | 24 -- .../hexcasting/recipe/staff/mangrove.json | 24 -- .../hexcasting/recipe/staff/mindsplice.json | 24 -- .../data/hexcasting/recipe/staff/oak.json | 24 -- .../hexcasting/recipe/staff/quenched.json | 24 -- .../data/hexcasting/recipe/staff/spruce.json | 24 -- .../data/hexcasting/recipe/staff/warped.json | 24 -- .../recipe/stonecutting/amethyst_tiles.json | 10 - .../recipe/stripped_edified_wood.json | 17 -- .../data/hexcasting/recipe/sub_sandwich.json | 27 --- .../data/hexcasting/recipe/thought_knot.json | 16 -- .../data/hexcasting/recipe/trinket.json | 26 --- .../hexcasting/recipe/uuid_colorizer.json | 24 -- .../tags/block/amethyst_blocks.json | 10 - .../block/brainswept_circle_components.json | 6 - .../tags/block/cheap_to_break_block.json | 6 - .../hexcasting/tags/block/directrices.json | 6 - .../hexcasting/tags/block/edified_logs.json | 12 - .../hexcasting/tags/block/edified_planks.json | 7 - .../data/hexcasting/tags/block/impeti.json | 7 - .../tags/block/quenched_allay_blocks.json | 9 - .../hexcasting/tags/block/slate_blocks.json | 10 - .../hexcasting/tags/block/water_plants.json | 8 - .../action/can_start_enlighten.json | 18 -- .../hexcasting/action/per_world_pattern.json | 18 -- .../action/requires_enlightenment.json | 18 -- .../item/brainswept_circle_components.json | 6 - .../hexcasting/tags/item/directrices.json | 6 - .../hexcasting/tags/item/edified_logs.json | 12 - .../hexcasting/tags/item/edified_planks.json | 7 - .../tags/item/grants_root_advancement.json | 8 - .../data/hexcasting/tags/item/impeti.json | 7 - .../data/hexcasting/tags/item/phial_base.json | 5 - .../hexcasting/tags/item/seal_materials.json | 5 - .../data/hexcasting/tags/item/staves.json | 18 -- .../data/minecraft/tags/block/buttons.json | 5 - .../tags/block/crystal_sound_blocks.json | 8 - .../data/minecraft/tags/block/doors.json | 5 - .../minecraft/tags/block/fence_gates.json | 5 - .../data/minecraft/tags/block/fences.json | 5 - .../data/minecraft/tags/block/leaves.json | 7 - .../data/minecraft/tags/block/logs.json | 12 - .../minecraft/tags/block/logs_that_burn.json | 12 - .../minecraft/tags/block/mineable/axe.json | 25 --- .../minecraft/tags/block/mineable/hoe.json | 7 - .../tags/block/mineable/pickaxe.json | 30 --- .../minecraft/tags/block/mineable/shovel.json | 5 - .../data/minecraft/tags/block/planks.json | 7 - .../minecraft/tags/block/pressure_plates.json | 5 - .../data/minecraft/tags/block/slabs.json | 5 - .../data/minecraft/tags/block/stairs.json | 5 - .../data/minecraft/tags/block/trapdoors.json | 5 - .../tags/block/unstable_bottom_center.json | 5 - .../minecraft/tags/block/wooden_buttons.json | 5 - .../minecraft/tags/block/wooden_doors.json | 5 - .../minecraft/tags/block/wooden_fences.json | 6 - .../tags/block/wooden_pressure_plates.json | 5 - .../minecraft/tags/block/wooden_slabs.json | 5 - .../minecraft/tags/block/wooden_stairs.json | 5 - .../tags/block/wooden_trapdoors.json | 5 - .../data/minecraft/tags/item/buttons.json | 5 - .../data/minecraft/tags/item/doors.json | 5 - .../data/minecraft/tags/item/leaves.json | 7 - .../data/minecraft/tags/item/logs.json | 12 - .../minecraft/tags/item/logs_that_burn.json | 12 - .../data/minecraft/tags/item/planks.json | 7 - .../data/minecraft/tags/item/slabs.json | 5 - .../data/minecraft/tags/item/trapdoors.json | 5 - .../minecraft/tags/item/wooden_buttons.json | 5 - .../minecraft/tags/item/wooden_doors.json | 5 - .../tags/item/wooden_pressure_plates.json | 5 - .../minecraft/tags/item/wooden_slabs.json | 5 - .../minecraft/tags/item/wooden_trapdoors.json | 5 - .../interop/emi/BrainsweepeeEmiStack.java | 8 +- .../fabric/interop/emi/EmiEdifyRecipe.java | 2 +- .../fabric/interop/emi/EmiPhialRecipe.java | 2 +- .../fabric/interop/emi/HexEMIPlugin.java | 5 +- .../fabric/network/FabricPacketHandler.java | 5 +- .../fabric/xplat/FabricXplatImpl.java | 2 +- Neoforge/build.gradle | 1 + Neoforge/gradle.properties | 2 + .../blockstates/akashic_bookshelf.json | 107 --------- .../blockstates/akashic_ligature.json | 7 - .../blockstates/akashic_record.json | 7 - .../blockstates/amethyst_bricks.json | 7 - .../blockstates/amethyst_bricks_small.json | 7 - .../blockstates/amethyst_dust_block.json | 7 - .../blockstates/amethyst_edified_leaves.json | 7 - .../blockstates/amethyst_pillar.json | 30 --- .../blockstates/amethyst_sconce.json | 7 - .../blockstates/amethyst_tiles.json | 7 - .../blockstates/ancient_scroll_paper.json | 7 - .../ancient_scroll_paper_lantern.json | 7 - .../aventurine_edified_leaves.json | 7 - .../blockstates/citrine_edified_leaves.json | 7 - .../blockstates/conjured_block.json | 7 - .../blockstates/conjured_light.json | 7 - .../blockstates/directrix/boolean.json | 142 ------------ .../blockstates/directrix/empty.json | 50 ----- .../blockstates/directrix/redstone.json | 96 -------- .../blockstates/edified_button.json | 118 ---------- .../hexcasting/blockstates/edified_door.json | 124 ---------- .../hexcasting/blockstates/edified_fence.json | 48 ---- .../blockstates/edified_fence_gate.json | 80 ------- .../hexcasting/blockstates/edified_log.json | 16 -- .../blockstates/edified_log_amethyst.json | 16 -- .../blockstates/edified_log_aventurine.json | 16 -- .../blockstates/edified_log_citrine.json | 16 -- .../blockstates/edified_log_purple.json | 16 -- .../hexcasting/blockstates/edified_panel.json | 7 - .../blockstates/edified_planks.json | 17 -- .../blockstates/edified_pressure_plate.json | 10 - .../hexcasting/blockstates/edified_slab.json | 13 -- .../blockstates/edified_stairs.json | 209 ----------------- .../hexcasting/blockstates/edified_tile.json | 7 - .../blockstates/edified_trapdoor.json | 68 ------ .../hexcasting/blockstates/edified_wood.json | 16 -- .../hexcasting/blockstates/impetus/empty.json | 50 ----- .../hexcasting/blockstates/impetus/look.json | 50 ----- .../blockstates/impetus/redstone.json | 96 -------- .../blockstates/impetus/rightclick.json | 50 ----- .../blockstates/quenched_allay.json | 7 - .../blockstates/quenched_allay_bricks.json | 7 - .../quenched_allay_bricks_small.json | 7 - .../blockstates/quenched_allay_tiles.json | 7 - .../hexcasting/blockstates/scroll_paper.json | 7 - .../blockstates/scroll_paper_lantern.json | 7 - .../assets/hexcasting/blockstates/slate.json | 122 ---------- .../blockstates/slate_amethyst_bricks.json | 15 -- .../slate_amethyst_bricks_small.json | 15 -- .../blockstates/slate_amethyst_pillar.json | 16 -- .../blockstates/slate_amethyst_tiles.json | 7 - .../hexcasting/blockstates/slate_block.json | 7 - .../hexcasting/blockstates/slate_bricks.json | 7 - .../blockstates/slate_bricks_small.json | 7 - .../hexcasting/blockstates/slate_pillar.json | 16 -- .../hexcasting/blockstates/slate_tiles.json | 7 - .../blockstates/stripped_edified_log.json | 16 -- .../blockstates/stripped_edified_wood.json | 16 -- .../models/block/akashic_bookshelf.json | 68 ------ .../models/block/akashic_bookshelf_1.json | 6 - .../models/block/akashic_bookshelf_2.json | 6 - .../models/block/akashic_bookshelf_3.json | 6 - .../models/block/akashic_bookshelf_4.json | 6 - .../models/block/akashic_bookshelf_empty.json | 8 - .../models/block/akashic_ligature.json | 6 - .../models/block/akashic_record.json | 87 -------- .../models/block/amethyst_dust_block.json | 6 - .../models/block/amethyst_edified_leaves.json | 7 - .../models/block/ancient_scroll_paper.json | 6 - .../block/ancient_scroll_paper_lantern.json | 8 - .../block/aventurine_edified_leaves.json | 7 - .../directrix/boolean/dim_false_down.json | 12 - .../directrix/boolean/dim_false_east.json | 12 - .../directrix/boolean/dim_false_north.json | 12 - .../directrix/boolean/dim_false_south.json | 12 - .../directrix/boolean/dim_false_up.json | 12 - .../directrix/boolean/dim_false_west.json | 12 - .../directrix/boolean/dim_neither_down.json | 12 - .../directrix/boolean/dim_neither_east.json | 12 - .../directrix/boolean/dim_neither_north.json | 12 - .../directrix/boolean/dim_neither_south.json | 12 - .../directrix/boolean/dim_neither_up.json | 12 - .../directrix/boolean/dim_neither_west.json | 12 - .../directrix/boolean/dim_true_down.json | 12 - .../directrix/boolean/dim_true_east.json | 12 - .../directrix/boolean/dim_true_north.json | 12 - .../directrix/boolean/dim_true_south.json | 12 - .../circle/directrix/boolean/dim_true_up.json | 12 - .../directrix/boolean/dim_true_west.json | 12 - .../directrix/boolean/lit_false_down.json | 12 - .../directrix/boolean/lit_false_east.json | 12 - .../directrix/boolean/lit_false_north.json | 12 - .../directrix/boolean/lit_false_south.json | 12 - .../directrix/boolean/lit_false_up.json | 12 - .../directrix/boolean/lit_false_west.json | 12 - .../directrix/boolean/lit_neither_down.json | 12 - .../directrix/boolean/lit_neither_east.json | 12 - .../directrix/boolean/lit_neither_north.json | 12 - .../directrix/boolean/lit_neither_south.json | 12 - .../directrix/boolean/lit_neither_up.json | 12 - .../directrix/boolean/lit_neither_west.json | 12 - .../directrix/boolean/lit_true_down.json | 12 - .../directrix/boolean/lit_true_east.json | 12 - .../directrix/boolean/lit_true_north.json | 12 - .../directrix/boolean/lit_true_south.json | 12 - .../circle/directrix/boolean/lit_true_up.json | 12 - .../directrix/boolean/lit_true_west.json | 12 - .../circle/directrix/empty/dim_down.json | 12 - .../circle/directrix/empty/dim_east.json | 12 - .../circle/directrix/empty/dim_north.json | 12 - .../circle/directrix/empty/dim_south.json | 12 - .../block/circle/directrix/empty/dim_up.json | 12 - .../circle/directrix/empty/dim_west.json | 12 - .../circle/directrix/empty/lit_down.json | 12 - .../circle/directrix/empty/lit_east.json | 12 - .../circle/directrix/empty/lit_north.json | 12 - .../circle/directrix/empty/lit_south.json | 12 - .../block/circle/directrix/empty/lit_up.json | 12 - .../circle/directrix/empty/lit_west.json | 12 - .../directrix/redstone/dim_powered_down.json | 12 - .../directrix/redstone/dim_powered_east.json | 12 - .../directrix/redstone/dim_powered_north.json | 12 - .../directrix/redstone/dim_powered_south.json | 12 - .../directrix/redstone/dim_powered_up.json | 12 - .../directrix/redstone/dim_powered_west.json | 12 - .../redstone/dim_unpowered_down.json | 12 - .../redstone/dim_unpowered_east.json | 12 - .../redstone/dim_unpowered_north.json | 12 - .../redstone/dim_unpowered_south.json | 12 - .../directrix/redstone/dim_unpowered_up.json | 12 - .../redstone/dim_unpowered_west.json | 12 - .../directrix/redstone/lit_powered_down.json | 12 - .../directrix/redstone/lit_powered_east.json | 12 - .../directrix/redstone/lit_powered_north.json | 12 - .../directrix/redstone/lit_powered_south.json | 12 - .../directrix/redstone/lit_powered_up.json | 12 - .../directrix/redstone/lit_powered_west.json | 12 - .../redstone/lit_unpowered_down.json | 12 - .../redstone/lit_unpowered_east.json | 12 - .../redstone/lit_unpowered_north.json | 12 - .../redstone/lit_unpowered_south.json | 12 - .../directrix/redstone/lit_unpowered_up.json | 12 - .../redstone/lit_unpowered_west.json | 12 - .../block/circle/impetus/empty/dim_down.json | 12 - .../block/circle/impetus/empty/dim_east.json | 12 - .../block/circle/impetus/empty/dim_north.json | 12 - .../block/circle/impetus/empty/dim_south.json | 12 - .../block/circle/impetus/empty/dim_up.json | 12 - .../block/circle/impetus/empty/dim_west.json | 12 - .../block/circle/impetus/empty/lit_down.json | 12 - .../block/circle/impetus/empty/lit_east.json | 12 - .../block/circle/impetus/empty/lit_north.json | 12 - .../block/circle/impetus/empty/lit_south.json | 12 - .../block/circle/impetus/empty/lit_up.json | 12 - .../block/circle/impetus/empty/lit_west.json | 12 - .../block/circle/impetus/look/dim_down.json | 12 - .../block/circle/impetus/look/dim_east.json | 12 - .../block/circle/impetus/look/dim_north.json | 12 - .../block/circle/impetus/look/dim_south.json | 12 - .../block/circle/impetus/look/dim_up.json | 12 - .../block/circle/impetus/look/dim_west.json | 12 - .../block/circle/impetus/look/lit_down.json | 12 - .../block/circle/impetus/look/lit_east.json | 12 - .../block/circle/impetus/look/lit_north.json | 12 - .../block/circle/impetus/look/lit_south.json | 12 - .../block/circle/impetus/look/lit_up.json | 12 - .../block/circle/impetus/look/lit_west.json | 12 - .../circle/impetus/redstone/dim_down.json | 12 - .../circle/impetus/redstone/dim_east.json | 12 - .../circle/impetus/redstone/dim_north.json | 12 - .../circle/impetus/redstone/dim_south.json | 12 - .../block/circle/impetus/redstone/dim_up.json | 12 - .../circle/impetus/redstone/dim_west.json | 12 - .../circle/impetus/redstone/lit_down.json | 12 - .../circle/impetus/redstone/lit_east.json | 12 - .../circle/impetus/redstone/lit_north.json | 12 - .../circle/impetus/redstone/lit_south.json | 12 - .../block/circle/impetus/redstone/lit_up.json | 12 - .../circle/impetus/redstone/lit_west.json | 12 - .../circle/impetus/rightclick/dim_down.json | 12 - .../circle/impetus/rightclick/dim_east.json | 12 - .../circle/impetus/rightclick/dim_north.json | 12 - .../circle/impetus/rightclick/dim_south.json | 12 - .../circle/impetus/rightclick/dim_up.json | 12 - .../circle/impetus/rightclick/dim_west.json | 12 - .../circle/impetus/rightclick/lit_down.json | 12 - .../circle/impetus/rightclick/lit_east.json | 12 - .../circle/impetus/rightclick/lit_north.json | 12 - .../circle/impetus/rightclick/lit_south.json | 12 - .../circle/impetus/rightclick/lit_up.json | 12 - .../circle/impetus/rightclick/lit_west.json | 12 - .../models/block/citrine_edified_leaves.json | 7 - .../hexcasting/models/block/conjured.json | 6 - .../models/block/deco/amethyst_bricks.json | 6 - .../block/deco/amethyst_bricks_small.json | 6 - .../models/block/deco/amethyst_pillar.json | 8 - .../models/block/deco/amethyst_tiles.json | 6 - .../block/deco/quenched_allay_bricks_0.json | 6 - .../block/deco/quenched_allay_bricks_1.json | 6 - .../block/deco/quenched_allay_bricks_2.json | 6 - .../block/deco/quenched_allay_bricks_3.json | 6 - .../deco/quenched_allay_bricks_small_0.json | 6 - .../deco/quenched_allay_bricks_small_1.json | 6 - .../deco/quenched_allay_bricks_small_2.json | 6 - .../deco/quenched_allay_bricks_small_3.json | 6 - .../block/deco/quenched_allay_tiles_0.json | 6 - .../block/deco/quenched_allay_tiles_1.json | 6 - .../block/deco/quenched_allay_tiles_2.json | 6 - .../block/deco/quenched_allay_tiles_3.json | 6 - .../block/deco/slate_amethyst_bricks_0.json | 6 - .../block/deco/slate_amethyst_bricks_1.json | 6 - .../block/deco/slate_amethyst_bricks_2.json | 6 - .../deco/slate_amethyst_bricks_small_0.json | 6 - .../deco/slate_amethyst_bricks_small_1.json | 6 - .../deco/slate_amethyst_bricks_small_2.json | 6 - .../block/deco/slate_amethyst_tiles.json | 6 - .../models/block/deco/slate_bricks.json | 6 - .../models/block/deco/slate_bricks_small.json | 6 - .../models/block/deco/slate_tiles.json | 6 - .../models/block/edified_button.json | 6 - .../models/block/edified_button_pressed.json | 6 - .../block/edified_door_bottom_left.json | 8 - .../block/edified_door_bottom_left_open.json | 8 - .../block/edified_door_bottom_right.json | 8 - .../block/edified_door_bottom_right_open.json | 8 - .../models/block/edified_door_top_left.json | 8 - .../block/edified_door_top_left_open.json | 8 - .../models/block/edified_door_top_right.json | 8 - .../block/edified_door_top_right_open.json | 8 - .../models/block/edified_fence_gate.json | 6 - .../models/block/edified_fence_gate_open.json | 6 - .../models/block/edified_fence_gate_wall.json | 6 - .../block/edified_fence_gate_wall_open.json | 6 - .../models/block/edified_fence_post.json | 6 - .../models/block/edified_fence_side.json | 6 - .../hexcasting/models/block/edified_log.json | 7 - .../models/block/edified_log_amethyst.json | 7 - .../edified_log_amethyst_horizontal.json | 7 - .../models/block/edified_log_aventurine.json | 7 - .../edified_log_aventurine_horizontal.json | 7 - .../models/block/edified_log_citrine.json | 7 - .../block/edified_log_citrine_horizontal.json | 7 - .../models/block/edified_log_horizontal.json | 7 - .../models/block/edified_log_purple.json | 7 - .../block/edified_log_purple_horizontal.json | 7 - .../models/block/edified_panel.json | 6 - .../models/block/edified_planks.json | 6 - .../models/block/edified_planks_2.json | 6 - .../models/block/edified_planks_3.json | 6 - .../models/block/edified_pressure_plate.json | 6 - .../block/edified_pressure_plate_down.json | 6 - .../hexcasting/models/block/edified_slab.json | 8 - .../models/block/edified_slab_top.json | 8 - .../models/block/edified_stairs.json | 8 - .../models/block/edified_stairs_inner.json | 8 - .../models/block/edified_stairs_outer.json | 8 - .../hexcasting/models/block/edified_tile.json | 6 - .../models/block/edified_trapdoor_bottom.json | 7 - .../models/block/edified_trapdoor_open.json | 7 - .../models/block/edified_trapdoor_top.json | 7 - .../hexcasting/models/block/edified_wood.json | 7 - .../models/block/edified_wood_horizontal.json | 7 - .../models/block/quenched_allay.json | 6 - .../models/block/quenched_allay_0.json | 6 - .../models/block/quenched_allay_1.json | 6 - .../models/block/quenched_allay_2.json | 6 - .../models/block/quenched_allay_3.json | 6 - .../models/block/quenched_allay_bricks.json | 6 - .../block/quenched_allay_bricks_small.json | 6 - .../models/block/quenched_allay_tiles.json | 6 - .../hexcasting/models/block/scroll_paper.json | 6 - .../models/block/scroll_paper_lantern.json | 8 - .../models/block/slate_amethyst_pillar.json | 7 - .../slate_amethyst_pillar_horizontal.json | 7 - .../hexcasting/models/block/slate_block.json | 6 - .../hexcasting/models/block/slate_pillar.json | 7 - .../models/block/slate_pillar_horizontal.json | 7 - .../models/block/stripped_edified_log.json | 7 - .../stripped_edified_log_horizontal.json | 7 - .../models/block/stripped_edified_wood.json | 7 - .../stripped_edified_wood_horizontal.json | 7 - .../assets/hexcasting/models/item/abacus.json | 6 - .../models/item/akashic_bookshelf.json | 3 - .../models/item/akashic_ligature.json | 3 - .../models/item/akashic_record.json | 3 - .../models/item/amethyst_bricks.json | 3 - .../models/item/amethyst_bricks_small.json | 3 - .../hexcasting/models/item/amethyst_dust.json | 6 - .../models/item/amethyst_dust_block.json | 3 - .../models/item/amethyst_edified_leaves.json | 3 - .../models/item/amethyst_pillar.json | 3 - .../models/item/amethyst_sconce.json | 3 - .../models/item/amethyst_tiles.json | 3 - .../models/item/ancient_cypher.json | 120 ---------- .../models/item/ancient_cypher_0_filled.json | 7 - .../models/item/ancient_cypher_1.json | 6 - .../models/item/ancient_cypher_1_filled.json | 7 - .../models/item/ancient_cypher_2.json | 6 - .../models/item/ancient_cypher_2_filled.json | 7 - .../models/item/ancient_cypher_3.json | 6 - .../models/item/ancient_cypher_3_filled.json | 7 - .../models/item/ancient_cypher_4.json | 6 - .../models/item/ancient_cypher_4_filled.json | 7 - .../models/item/ancient_cypher_5.json | 6 - .../models/item/ancient_cypher_5_filled.json | 7 - .../models/item/ancient_cypher_6.json | 6 - .../models/item/ancient_cypher_6_filled.json | 7 - .../models/item/ancient_cypher_7.json | 6 - .../models/item/ancient_cypher_7_filled.json | 7 - .../models/item/ancient_scroll_paper.json | 3 - .../item/ancient_scroll_paper_lantern.json | 3 - .../hexcasting/models/item/artifact.json | 120 ---------- .../models/item/artifact_0_filled.json | 7 - .../hexcasting/models/item/artifact_1.json | 6 - .../models/item/artifact_1_filled.json | 7 - .../hexcasting/models/item/artifact_2.json | 6 - .../models/item/artifact_2_filled.json | 7 - .../hexcasting/models/item/artifact_3.json | 6 - .../models/item/artifact_3_filled.json | 7 - .../hexcasting/models/item/artifact_4.json | 6 - .../models/item/artifact_4_filled.json | 7 - .../hexcasting/models/item/artifact_5.json | 6 - .../models/item/artifact_5_filled.json | 7 - .../hexcasting/models/item/artifact_6.json | 6 - .../models/item/artifact_6_filled.json | 7 - .../hexcasting/models/item/artifact_7.json | 6 - .../models/item/artifact_7_filled.json | 7 - .../item/aventurine_edified_leaves.json | 3 - .../hexcasting/models/item/battery.json | 179 --------------- .../models/item/charged_amethyst.json | 6 - .../hexcasting/models/item/cherry_staff.json | 6 - .../models/item/citrine_edified_leaves.json | 3 - .../models/item/conjured_block.json | 6 - .../models/item/conjured_light.json | 6 - .../models/item/creative_unlocker.json | 6 - .../assets/hexcasting/models/item/cypher.json | 120 ---------- .../models/item/cypher_0_filled.json | 7 - .../hexcasting/models/item/cypher_1.json | 6 - .../models/item/cypher_1_filled.json | 7 - .../hexcasting/models/item/cypher_2.json | 6 - .../models/item/cypher_2_filled.json | 7 - .../hexcasting/models/item/cypher_3.json | 6 - .../models/item/cypher_3_filled.json | 7 - .../hexcasting/models/item/cypher_4.json | 6 - .../models/item/cypher_4_filled.json | 7 - .../hexcasting/models/item/cypher_5.json | 6 - .../models/item/cypher_5_filled.json | 7 - .../hexcasting/models/item/cypher_6.json | 6 - .../models/item/cypher_6_filled.json | 7 - .../hexcasting/models/item/cypher_7.json | 6 - .../models/item/cypher_7_filled.json | 7 - .../models/item/default_colorizer.json | 6 - .../models/item/directrix/boolean.json | 3 - .../models/item/directrix/empty.json | 3 - .../models/item/directrix/redstone.json | 3 - .../models/item/dye_colorizer_black.json | 6 - .../models/item/dye_colorizer_blue.json | 6 - .../models/item/dye_colorizer_brown.json | 6 - .../models/item/dye_colorizer_cyan.json | 6 - .../models/item/dye_colorizer_gray.json | 6 - .../models/item/dye_colorizer_green.json | 6 - .../models/item/dye_colorizer_light_blue.json | 6 - .../models/item/dye_colorizer_light_gray.json | 6 - .../models/item/dye_colorizer_lime.json | 6 - .../models/item/dye_colorizer_magenta.json | 6 - .../models/item/dye_colorizer_orange.json | 6 - .../models/item/dye_colorizer_pink.json | 6 - .../models/item/dye_colorizer_purple.json | 6 - .../models/item/dye_colorizer_red.json | 6 - .../models/item/dye_colorizer_white.json | 6 - .../models/item/dye_colorizer_yellow.json | 6 - .../models/item/edified_button.json | 6 - .../hexcasting/models/item/edified_door.json | 6 - .../hexcasting/models/item/edified_fence.json | 3 - .../models/item/edified_fence_gate.json | 3 - .../hexcasting/models/item/edified_log.json | 3 - .../models/item/edified_log_amethyst.json | 3 - .../models/item/edified_log_aventurine.json | 3 - .../models/item/edified_log_citrine.json | 3 - .../models/item/edified_log_purple.json | 3 - .../hexcasting/models/item/edified_panel.json | 3 - .../models/item/edified_planks.json | 3 - .../models/item/edified_pressure_plate.json | 3 - .../hexcasting/models/item/edified_slab.json | 3 - .../models/item/edified_stairs.json | 3 - .../hexcasting/models/item/edified_tile.json | 3 - .../models/item/edified_trapdoor.json | 3 - .../hexcasting/models/item/edified_wood.json | 3 - .../assets/hexcasting/models/item/focus.json | 176 --------------- .../models/item/focus_0_filled.json | 7 - .../models/item/focus_0_sealed.json | 7 - .../hexcasting/models/item/focus_1.json | 6 - .../models/item/focus_1_filled.json | 7 - .../models/item/focus_1_sealed.json | 7 - .../hexcasting/models/item/focus_2.json | 6 - .../models/item/focus_2_filled.json | 7 - .../models/item/focus_2_sealed.json | 7 - .../hexcasting/models/item/focus_3.json | 6 - .../models/item/focus_3_filled.json | 7 - .../models/item/focus_3_sealed.json | 7 - .../hexcasting/models/item/focus_4.json | 6 - .../models/item/focus_4_filled.json | 7 - .../models/item/focus_4_sealed.json | 7 - .../hexcasting/models/item/focus_5.json | 6 - .../models/item/focus_5_filled.json | 7 - .../models/item/focus_5_sealed.json | 7 - .../hexcasting/models/item/focus_6.json | 6 - .../models/item/focus_6_filled.json | 7 - .../models/item/focus_6_sealed.json | 7 - .../hexcasting/models/item/focus_7.json | 6 - .../models/item/focus_7_filled.json | 7 - .../models/item/focus_7_sealed.json | 7 - .../hexcasting/models/item/impetus/empty.json | 3 - .../hexcasting/models/item/impetus/look.json | 3 - .../models/item/impetus/redstone.json | 3 - .../models/item/impetus/rightclick.json | 3 - .../models/item/jeweler_hammer.json | 6 - .../assets/hexcasting/models/item/lens.json | 20 -- .../hexcasting/models/item/lore_fragment.json | 6 - .../hexcasting/models/item/old_staff.json | 6 - .../models/item/patchouli_book.json | 6 - .../hexcasting/models/item/phial_large_0.json | 6 - .../hexcasting/models/item/phial_large_1.json | 6 - .../hexcasting/models/item/phial_large_2.json | 6 - .../hexcasting/models/item/phial_large_3.json | 6 - .../hexcasting/models/item/phial_large_4.json | 6 - .../models/item/phial_larger_0.json | 6 - .../models/item/phial_larger_1.json | 6 - .../models/item/phial_larger_2.json | 6 - .../models/item/phial_larger_3.json | 6 - .../models/item/phial_larger_4.json | 6 - .../models/item/phial_largest_0.json | 6 - .../models/item/phial_largest_1.json | 6 - .../models/item/phial_largest_2.json | 6 - .../models/item/phial_largest_3.json | 6 - .../models/item/phial_largest_4.json | 6 - .../models/item/phial_medium_0.json | 6 - .../models/item/phial_medium_1.json | 6 - .../models/item/phial_medium_2.json | 6 - .../models/item/phial_medium_3.json | 6 - .../models/item/phial_medium_4.json | 6 - .../hexcasting/models/item/phial_small_0.json | 6 - .../hexcasting/models/item/phial_small_1.json | 6 - .../hexcasting/models/item/phial_small_2.json | 6 - .../hexcasting/models/item/phial_small_3.json | 6 - .../hexcasting/models/item/phial_small_4.json | 6 - .../models/item/pride_colorizer_agender.json | 6 - .../models/item/pride_colorizer_aroace.json | 6 - .../item/pride_colorizer_aromantic.json | 6 - .../models/item/pride_colorizer_asexual.json | 6 - .../models/item/pride_colorizer_bisexual.json | 6 - .../models/item/pride_colorizer_demiboy.json | 6 - .../models/item/pride_colorizer_demigirl.json | 6 - .../models/item/pride_colorizer_gay.json | 6 - .../item/pride_colorizer_genderfluid.json | 6 - .../item/pride_colorizer_genderqueer.json | 6 - .../models/item/pride_colorizer_intersex.json | 6 - .../models/item/pride_colorizer_lesbian.json | 6 - .../item/pride_colorizer_nonbinary.json | 6 - .../item/pride_colorizer_pansexual.json | 6 - .../models/item/pride_colorizer_plural.json | 6 - .../item/pride_colorizer_transgender.json | 6 - .../models/item/quenched_allay.json | 28 --- .../models/item/quenched_allay_bricks.json | 28 --- .../item/quenched_allay_bricks_small.json | 28 --- .../models/item/quenched_allay_shard.json | 28 --- .../models/item/quenched_allay_tiles.json | 28 --- .../models/item/quenched_shard_0.json | 6 - .../models/item/quenched_shard_1.json | 6 - .../models/item/quenched_shard_2.json | 6 - .../models/item/quenched_shard_3.json | 6 - .../assets/hexcasting/models/item/scroll.json | 16 -- .../models/item/scroll_ancient_large.json | 6 - .../models/item/scroll_ancient_medium.json | 6 - .../models/item/scroll_ancient_small.json | 6 - .../hexcasting/models/item/scroll_medium.json | 16 -- .../hexcasting/models/item/scroll_paper.json | 3 - .../models/item/scroll_paper_lantern.json | 3 - .../models/item/scroll_pristine_large.json | 6 - .../models/item/scroll_pristine_medium.json | 6 - .../models/item/scroll_pristine_small.json | 6 - .../hexcasting/models/item/scroll_small.json | 16 -- .../assets/hexcasting/models/item/slate.json | 16 -- .../models/item/slate_amethyst_bricks.json | 3 - .../item/slate_amethyst_bricks_small.json | 3 - .../models/item/slate_amethyst_pillar.json | 3 - .../models/item/slate_amethyst_tiles.json | 3 - .../hexcasting/models/item/slate_blank.json | 6 - .../hexcasting/models/item/slate_block.json | 3 - .../hexcasting/models/item/slate_bricks.json | 3 - .../models/item/slate_bricks_small.json | 3 - .../hexcasting/models/item/slate_pillar.json | 3 - .../hexcasting/models/item/slate_tiles.json | 3 - .../hexcasting/models/item/slate_written.json | 6 - .../hexcasting/models/item/spellbook.json | 176 --------------- .../models/item/spellbook_0_filled.json | 7 - .../models/item/spellbook_0_sealed.json | 7 - .../hexcasting/models/item/spellbook_1.json | 6 - .../models/item/spellbook_1_filled.json | 7 - .../models/item/spellbook_1_sealed.json | 7 - .../hexcasting/models/item/spellbook_2.json | 6 - .../models/item/spellbook_2_filled.json | 7 - .../models/item/spellbook_2_sealed.json | 7 - .../hexcasting/models/item/spellbook_3.json | 6 - .../models/item/spellbook_3_filled.json | 7 - .../models/item/spellbook_3_sealed.json | 7 - .../hexcasting/models/item/spellbook_4.json | 6 - .../models/item/spellbook_4_filled.json | 7 - .../models/item/spellbook_4_sealed.json | 7 - .../hexcasting/models/item/spellbook_5.json | 6 - .../models/item/spellbook_5_filled.json | 7 - .../models/item/spellbook_5_sealed.json | 7 - .../hexcasting/models/item/spellbook_6.json | 6 - .../models/item/spellbook_6_filled.json | 7 - .../models/item/spellbook_6_sealed.json | 7 - .../hexcasting/models/item/spellbook_7.json | 6 - .../models/item/spellbook_7_filled.json | 7 - .../models/item/spellbook_7_sealed.json | 7 - .../hexcasting/models/item/staff/acacia.json | 6 - .../hexcasting/models/item/staff/bamboo.json | 6 - .../hexcasting/models/item/staff/birch.json | 6 - .../hexcasting/models/item/staff/cherry.json | 6 - .../hexcasting/models/item/staff/crimson.json | 6 - .../models/item/staff/dark_oak.json | 6 - .../hexcasting/models/item/staff/edified.json | 6 - .../hexcasting/models/item/staff/jungle.json | 6 - .../models/item/staff/mangrove.json | 6 - .../models/item/staff/mindsplice.json | 6 - .../hexcasting/models/item/staff/oak.json | 6 - .../models/item/staff/quenched.json | 28 --- .../models/item/staff/quenched_0.json | 6 - .../models/item/staff/quenched_1.json | 6 - .../models/item/staff/quenched_2.json | 6 - .../models/item/staff/quenched_3.json | 6 - .../hexcasting/models/item/staff/spruce.json | 6 - .../hexcasting/models/item/staff/warped.json | 6 - .../models/item/stripped_edified_log.json | 3 - .../models/item/stripped_edified_wood.json | 3 - .../hexcasting/models/item/sub_sandwich.json | 6 - .../hexcasting/models/item/thought_knot.json | 20 -- .../models/item/thought_knot_written.json | 7 - .../hexcasting/models/item/trinket.json | 120 ---------- .../models/item/trinket_0_filled.json | 7 - .../hexcasting/models/item/trinket_1.json | 6 - .../models/item/trinket_1_filled.json | 7 - .../hexcasting/models/item/trinket_2.json | 6 - .../models/item/trinket_2_filled.json | 7 - .../hexcasting/models/item/trinket_3.json | 6 - .../models/item/trinket_3_filled.json | 7 - .../hexcasting/models/item/trinket_4.json | 6 - .../models/item/trinket_4_filled.json | 7 - .../hexcasting/models/item/trinket_5.json | 6 - .../models/item/trinket_5_filled.json | 7 - .../hexcasting/models/item/trinket_6.json | 6 - .../models/item/trinket_6_filled.json | 7 - .../hexcasting/models/item/trinket_7.json | 6 - .../models/item/trinket_7_filled.json | 7 - .../models/item/uuid_colorizer.json | 6 - .../hexcasting/models/staff/acacia.json | 16 -- .../hexcasting/models/staff/bamboo.json | 16 -- .../assets/hexcasting/models/staff/birch.json | 16 -- .../hexcasting/models/staff/cherry.json | 16 -- .../hexcasting/models/staff/crimson.json | 16 -- .../hexcasting/models/staff/dark_oak.json | 16 -- .../hexcasting/models/staff/edified.json | 16 -- .../hexcasting/models/staff/jungle.json | 16 -- .../hexcasting/models/staff/mangrove.json | 16 -- .../hexcasting/models/staff/mindsplice.json | 16 -- .../assets/hexcasting/models/staff/oak.json | 16 -- .../hexcasting/models/staff/spruce.json | 16 -- .../hexcasting/models/staff/warped.json | 16 -- .../data/create/tags/block/brittle.json | 8 - .../data/forge/tags/item/dusts/amethyst.json | 5 - .../resources/data/forge/tags/item/gems.json | 5 - .../advancement/aaa_wasteful_cast.json | 32 --- .../hexcasting/advancement/aab_big_cast.json | 32 --- .../advancement/creative_unlocker.json | 36 --- .../hexcasting/advancement/enlightenment.json | 38 ---- .../data/hexcasting/advancement/lore.json | 32 --- .../advancement/lore/cardamom1.json | 25 --- .../advancement/lore/cardamom2.json | 25 --- .../advancement/lore/cardamom3.json | 25 --- .../advancement/lore/cardamom4.json | 25 --- .../advancement/lore/cardamom5.json | 25 --- .../advancement/lore/experiment1.json | 25 --- .../advancement/lore/experiment2.json | 25 --- .../advancement/lore/inventory.json | 25 --- .../hexcasting/advancement/opened_eyes.json | 33 --- .../recipes/brainsweep/akashic_record.json | 35 --- .../recipes/brainsweep/budding_amethyst.json | 35 --- .../recipes/brainsweep/directrix_boolean.json | 35 --- .../brainsweep/directrix_redstone.json | 35 --- .../recipes/brainsweep/impetus_look.json | 35 --- .../brainsweep/impetus_rightclick.json | 35 --- .../brainsweep/impetus_storedplayer.json | 35 --- .../recipes/brainsweep/quench_allay.json | 35 --- .../building_blocks/amethyst_bricks.json | 35 --- ...yst_bricks_from_amethyst_bricks_small.json | 35 --- ...yst_bricks_small_from_amethyst_bricks.json | 35 --- .../amethyst_dust_packing.json | 32 --- .../amethyst_dust_unpacking.json | 32 --- .../building_blocks/amethyst_pillar.json | 35 --- .../building_blocks/amethyst_tiles.json | 34 --- .../building_blocks/ancient_scroll_paper.json | 32 --- .../building_blocks/edified_fence.json | 32 --- .../building_blocks/edified_fence_gate.json | 32 --- .../building_blocks/edified_panel.json | 32 --- .../building_blocks/edified_planks.json | 32 --- .../recipes/building_blocks/edified_slab.json | 32 --- .../building_blocks/edified_stairs.json | 32 --- .../recipes/building_blocks/edified_tile.json | 32 --- .../recipes/building_blocks/edified_wood.json | 32 --- .../quenched_allay_bricks.json | 35 --- ...icks_from_quenched_allay_bricks_small.json | 35 --- ...icks_small_from_quenched_allay_bricks.json | 35 --- .../building_blocks/quenched_allay_tiles.json | 35 --- .../recipes/building_blocks/scroll_paper.json | 32 --- .../slate_amethyst_bricks.json | 35 --- .../slate_amethyst_bricks_small.json | 35 --- .../slate_amethyst_pillar.json | 35 --- .../building_blocks/slate_amethyst_tiles.json | 35 --- .../recipes/building_blocks/slate_block.json | 32 --- .../slate_block_from_slates.json | 32 --- .../recipes/building_blocks/slate_bricks.json | 35 --- .../slate_bricks_from_slate_bricks_small.json | 35 --- .../slate_bricks_small_from_slate_bricks.json | 35 --- .../recipes/building_blocks/slate_pillar.json | 35 --- .../recipes/building_blocks/slate_tiles.json | 35 --- .../stonecutting/amethyst_bricks.json | 33 --- .../stonecutting/amethyst_bricks_small.json | 33 --- .../stonecutting/amethyst_pillar.json | 33 --- .../stonecutting/amethyst_tiles.json | 32 --- .../stonecutting/quenched_allay_bricks.json | 33 --- .../quenched_allay_bricks_small.json | 33 --- .../stonecutting/quenched_allay_tiles.json | 33 --- .../stonecutting/slate_bricks.json | 33 --- .../stonecutting/slate_bricks_small.json | 33 --- .../stonecutting/slate_pillar.json | 33 --- .../stonecutting/slate_tiles.json | 33 --- .../stripped_edified_wood.json | 32 --- .../ageing_scroll_paper_lantern.json | 32 --- .../recipes/decorations/amethyst_sconce.json | 32 --- .../ancient_scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll.json | 32 --- .../recipes/decorations/scroll_medium.json | 32 --- .../decorations/scroll_paper_lantern.json | 32 --- .../recipes/decorations/scroll_small.json | 32 --- .../recipes/decorations/slate.json | 32 --- .../recipes/food/sub_sandwich.json | 32 --- .../recipes/misc/ancient_colorizer.json | 35 --- .../decompose_quenched_shard/charged.json | 32 --- .../misc/decompose_quenched_shard/dust.json | 32 --- .../misc/decompose_quenched_shard/shard.json | 32 --- .../recipes/misc/default_colorizer.json | 32 --- .../recipes/misc/dye_colorizer_black.json | 32 --- .../recipes/misc/dye_colorizer_blue.json | 32 --- .../recipes/misc/dye_colorizer_brown.json | 32 --- .../recipes/misc/dye_colorizer_cyan.json | 32 --- .../recipes/misc/dye_colorizer_gray.json | 32 --- .../recipes/misc/dye_colorizer_green.json | 32 --- .../misc/dye_colorizer_light_blue.json | 32 --- .../misc/dye_colorizer_light_gray.json | 32 --- .../recipes/misc/dye_colorizer_lime.json | 32 --- .../recipes/misc/dye_colorizer_magenta.json | 32 --- .../recipes/misc/dye_colorizer_orange.json | 32 --- .../recipes/misc/dye_colorizer_pink.json | 32 --- .../recipes/misc/dye_colorizer_purple.json | 32 --- .../recipes/misc/dye_colorizer_red.json | 32 --- .../recipes/misc/dye_colorizer_white.json | 32 --- .../recipes/misc/dye_colorizer_yellow.json | 32 --- .../recipes/misc/pride_colorizer_agender.json | 32 --- .../recipes/misc/pride_colorizer_aroace.json | 32 --- .../misc/pride_colorizer_aromantic.json | 32 --- .../recipes/misc/pride_colorizer_asexual.json | 32 --- .../misc/pride_colorizer_bisexual.json | 32 --- .../recipes/misc/pride_colorizer_demiboy.json | 32 --- .../misc/pride_colorizer_demigirl.json | 32 --- .../recipes/misc/pride_colorizer_gay.json | 32 --- .../misc/pride_colorizer_genderfluid.json | 32 --- .../misc/pride_colorizer_genderqueer.json | 32 --- .../misc/pride_colorizer_intersex.json | 32 --- .../recipes/misc/pride_colorizer_lesbian.json | 32 --- .../misc/pride_colorizer_nonbinary.json | 32 --- .../recipes/misc/pride_colorizer_plural.json | 32 --- .../misc/pride_colorizer_transgender.json | 32 --- .../recipes/misc/uuid_colorizer.json | 32 --- .../recipes/redstone/akashic_bookshelf.json | 35 --- .../recipes/redstone/akashic_ligature.json | 35 --- .../recipes/redstone/directrix/empty.json | 35 --- .../recipes/redstone/edified_button.json | 32 --- .../recipes/redstone/edified_door.json | 32 --- .../redstone/edified_pressure_plate.json | 32 --- .../recipes/redstone/edified_trapdoor.json | 32 --- .../recipes/redstone/impetus/empty.json | 35 --- .../advancement/recipes/tools/abacus.json | 32 --- .../advancement/recipes/tools/artifact.json | 32 --- .../advancement/recipes/tools/cypher.json | 32 --- .../advancement/recipes/tools/focus.json | 32 --- .../recipes/tools/focus_rotated.json | 32 --- .../recipes/tools/jeweler_hammer.json | 32 --- .../advancement/recipes/tools/lens.json | 32 --- .../advancement/recipes/tools/spellbook.json | 43 ---- .../recipes/tools/staff/acacia.json | 32 --- .../recipes/tools/staff/bamboo.json | 32 --- .../recipes/tools/staff/birch.json | 32 --- .../recipes/tools/staff/cherry.json | 32 --- .../recipes/tools/staff/crimson.json | 32 --- .../recipes/tools/staff/dark_oak.json | 32 --- .../recipes/tools/staff/edified.json | 32 --- .../recipes/tools/staff/jungle.json | 32 --- .../recipes/tools/staff/mangrove.json | 32 --- .../recipes/tools/staff/mindsplice.json | 32 --- .../advancement/recipes/tools/staff/oak.json | 32 --- .../recipes/tools/staff/quenched.json | 32 --- .../recipes/tools/staff/spruce.json | 32 --- .../recipes/tools/staff/warped.json | 32 --- .../recipes/tools/thought_knot.json | 32 --- .../advancement/recipes/tools/trinket.json | 32 --- .../data/hexcasting/advancement/root.json | 34 --- .../advancement/y_u_no_cast_angy.json | 26 --- .../data/hexcasting/damage_type/overcast.json | 5 - .../loot_modifiers/amethyst_cluster.json | 10 - .../cypher/hexcasting/random_cypher.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../cypher/minecraft/chests/ancient_city.json | 10 - .../minecraft/chests/desert_pyramid.json | 10 - .../minecraft/chests/jungle_temple.json | 10 - .../minecraft/chests/nether_bridge.json | 10 - .../minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_corridor.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../minecraft/chests/pillager_outpost.json | 10 - .../lore/minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_library.json | 10 - .../chests/village/village_desert_house.json | 10 - .../chests/village/village_plains_house.json | 10 - .../chests/village/village_savanna_house.json | 10 - .../chests/village/village_snowy_house.json | 10 - .../chests/village/village_taiga_house.json | 10 - .../minecraft/chests/woodland_mansion.json | 10 - .../scroll/hexcasting/random_scroll.json | 10 - .../minecraft/chests/abandoned_mineshaft.json | 10 - .../scroll/minecraft/chests/ancient_city.json | 10 - .../minecraft/chests/bastion_other.json | 10 - .../minecraft/chests/bastion_treasure.json | 10 - .../minecraft/chests/desert_pyramid.json | 10 - .../minecraft/chests/end_city_treasure.json | 10 - .../minecraft/chests/jungle_temple.json | 10 - .../minecraft/chests/nether_bridge.json | 10 - .../minecraft/chests/pillager_outpost.json | 10 - .../minecraft/chests/shipwreck_map.json | 10 - .../minecraft/chests/simple_dungeon.json | 10 - .../minecraft/chests/stronghold_library.json | 10 - .../chests/village/village_cartographer.json | 10 - .../minecraft/chests/woodland_mansion.json | 10 - .../loot_table/blocks/akashic_bookshelf.json | 15 -- .../loot_table/blocks/akashic_ligature.json | 15 -- .../loot_table/blocks/akashic_record.json | 15 -- .../loot_table/blocks/amethyst_bricks.json | 15 -- .../blocks/amethyst_bricks_small.json | 15 -- .../blocks/amethyst_dust_block.json | 15 -- .../blocks/amethyst_edified_leaves.json | 41 ---- .../loot_table/blocks/amethyst_pillar.json | 15 -- .../loot_table/blocks/amethyst_sconce.json | 15 -- .../loot_table/blocks/amethyst_tiles.json | 15 -- .../blocks/ancient_scroll_paper.json | 15 -- .../blocks/ancient_scroll_paper_lantern.json | 15 -- .../blocks/aventurine_edified_leaves.json | 41 ---- .../blocks/citrine_edified_leaves.json | 41 ---- .../loot_table/blocks/directrix/boolean.json | 15 -- .../loot_table/blocks/directrix/empty.json | 15 -- .../loot_table/blocks/directrix/redstone.json | 15 -- .../loot_table/blocks/edified_button.json | 15 -- .../loot_table/blocks/edified_door.json | 24 -- .../loot_table/blocks/edified_fence.json | 15 -- .../loot_table/blocks/edified_fence_gate.json | 15 -- .../loot_table/blocks/edified_log.json | 15 -- .../blocks/edified_log_amethyst.json | 15 -- .../blocks/edified_log_aventurine.json | 15 -- .../blocks/edified_log_citrine.json | 15 -- .../loot_table/blocks/edified_log_purple.json | 15 -- .../loot_table/blocks/edified_panel.json | 15 -- .../loot_table/blocks/edified_planks.json | 15 -- .../blocks/edified_pressure_plate.json | 15 -- .../loot_table/blocks/edified_slab.json | 34 --- .../loot_table/blocks/edified_stairs.json | 15 -- .../loot_table/blocks/edified_tile.json | 15 -- .../loot_table/blocks/edified_trapdoor.json | 15 -- .../loot_table/blocks/edified_wood.json | 15 -- .../loot_table/blocks/impetus/empty.json | 15 -- .../loot_table/blocks/impetus/look.json | 15 -- .../loot_table/blocks/impetus/redstone.json | 15 -- .../loot_table/blocks/impetus/rightclick.json | 15 -- .../loot_table/blocks/quenched_allay.json | 69 ------ .../blocks/quenched_allay_bricks.json | 15 -- .../blocks/quenched_allay_bricks_small.json | 15 -- .../blocks/quenched_allay_tiles.json | 15 -- .../loot_table/blocks/scroll_paper.json | 15 -- .../blocks/scroll_paper_lantern.json | 15 -- .../hexcasting/loot_table/blocks/slate.json | 24 -- .../blocks/slate_amethyst_bricks.json | 15 -- .../blocks/slate_amethyst_bricks_small.json | 15 -- .../blocks/slate_amethyst_pillar.json | 15 -- .../blocks/slate_amethyst_tiles.json | 15 -- .../loot_table/blocks/slate_block.json | 15 -- .../loot_table/blocks/slate_bricks.json | 15 -- .../loot_table/blocks/slate_bricks_small.json | 15 -- .../loot_table/blocks/slate_pillar.json | 15 -- .../loot_table/blocks/slate_tiles.json | 15 -- .../blocks/stripped_edified_log.json | 15 -- .../blocks/stripped_edified_wood.json | 15 -- .../loot_table/inject/amethyst_cluster.json | 211 ------------------ .../data/hexcasting/recipe/abacus.json | 24 -- .../recipe/ageing_scroll_paper_lantern.json | 37 --- .../hexcasting/recipe/akashic_bookshelf.json | 24 -- .../hexcasting/recipe/akashic_ligature.json | 30 --- .../hexcasting/recipe/amethyst_bricks.json | 18 -- ...yst_bricks_from_amethyst_bricks_small.json | 12 - ...yst_bricks_small_from_amethyst_bricks.json | 12 - .../recipe/amethyst_dust_packing.json | 17 -- .../recipe/amethyst_dust_unpacking.json | 13 -- .../hexcasting/recipe/amethyst_pillar.json | 18 -- .../hexcasting/recipe/amethyst_sconce.json | 20 -- .../hexcasting/recipe/amethyst_tiles.json | 18 -- .../hexcasting/recipe/ancient_colorizer.json | 21 -- .../recipe/ancient_scroll_paper.json | 37 --- .../recipe/ancient_scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/artifact.json | 24 -- .../recipe/brainsweep/akashic_record.json | 16 -- .../recipe/brainsweep/budding_amethyst.json | 15 -- .../recipe/brainsweep/directrix_boolean.json | 21 -- .../recipe/brainsweep/directrix_redstone.json | 21 -- .../recipe/brainsweep/impetus_look.json | 20 -- .../recipe/brainsweep/impetus_rightclick.json | 20 -- .../brainsweep/impetus_storedplayer.json | 21 -- .../recipe/brainsweep/quench_allay.json | 15 -- .../data/hexcasting/recipe/cypher.json | 21 -- .../decompose_quenched_shard/charged.json | 16 -- .../recipe/decompose_quenched_shard/dust.json | 16 -- .../decompose_quenched_shard/shard.json | 16 -- .../hexcasting/recipe/default_colorizer.json | 21 -- .../hexcasting/recipe/directrix/empty.json | 27 --- .../recipe/dye_colorizer_black.json | 21 -- .../hexcasting/recipe/dye_colorizer_blue.json | 21 -- .../recipe/dye_colorizer_brown.json | 21 -- .../hexcasting/recipe/dye_colorizer_cyan.json | 21 -- .../hexcasting/recipe/dye_colorizer_gray.json | 21 -- .../recipe/dye_colorizer_green.json | 21 -- .../recipe/dye_colorizer_light_blue.json | 21 -- .../recipe/dye_colorizer_light_gray.json | 21 -- .../hexcasting/recipe/dye_colorizer_lime.json | 21 -- .../recipe/dye_colorizer_magenta.json | 21 -- .../recipe/dye_colorizer_orange.json | 21 -- .../hexcasting/recipe/dye_colorizer_pink.json | 21 -- .../recipe/dye_colorizer_purple.json | 21 -- .../hexcasting/recipe/dye_colorizer_red.json | 21 -- .../recipe/dye_colorizer_white.json | 21 -- .../recipe/dye_colorizer_yellow.json | 21 -- .../hexcasting/recipe/dynamicseal_focus.json | 4 - .../recipe/dynamicseal_spellbook.json | 4 - .../hexcasting/recipe/edified_button.json | 13 -- .../data/hexcasting/recipe/edified_door.json | 18 -- .../data/hexcasting/recipe/edified_fence.json | 20 -- .../hexcasting/recipe/edified_fence_gate.json | 20 -- .../data/hexcasting/recipe/edified_panel.json | 21 -- .../hexcasting/recipe/edified_planks.json | 13 -- .../recipe/edified_pressure_plate.json | 16 -- .../data/hexcasting/recipe/edified_slab.json | 16 -- .../hexcasting/recipe/edified_stairs.json | 18 -- .../data/hexcasting/recipe/edified_tile.json | 18 -- .../hexcasting/recipe/edified_trapdoor.json | 17 -- .../data/hexcasting/recipe/edified_wood.json | 17 -- .../data/hexcasting/recipe/focus.json | 27 --- .../data/hexcasting/recipe/focus_rotated.json | 27 --- .../data/hexcasting/recipe/impetus/empty.json | 27 --- .../hexcasting/recipe/jeweler_hammer.json | 32 --- .../data/hexcasting/recipe/lens.json | 21 -- .../recipe/pride_colorizer_agender.json | 21 -- .../recipe/pride_colorizer_aroace.json | 21 -- .../recipe/pride_colorizer_aromantic.json | 21 -- .../recipe/pride_colorizer_asexual.json | 21 -- .../recipe/pride_colorizer_bisexual.json | 21 -- .../recipe/pride_colorizer_demiboy.json | 21 -- .../recipe/pride_colorizer_demigirl.json | 21 -- .../recipe/pride_colorizer_gay.json | 21 -- .../recipe/pride_colorizer_genderfluid.json | 21 -- .../recipe/pride_colorizer_genderqueer.json | 21 -- .../recipe/pride_colorizer_intersex.json | 21 -- .../recipe/pride_colorizer_lesbian.json | 21 -- .../recipe/pride_colorizer_nonbinary.json | 21 -- .../recipe/pride_colorizer_plural.json | 21 -- .../recipe/pride_colorizer_transgender.json | 21 -- .../recipe/quenched_allay_bricks.json | 18 -- ...icks_from_quenched_allay_bricks_small.json | 12 - ...icks_small_from_quenched_allay_bricks.json | 12 - .../recipe/quenched_allay_tiles.json | 18 -- .../data/hexcasting/recipe/scroll.json | 21 -- .../data/hexcasting/recipe/scroll_medium.json | 21 -- .../data/hexcasting/recipe/scroll_paper.json | 24 -- .../recipe/scroll_paper_lantern.json | 20 -- .../data/hexcasting/recipe/scroll_small.json | 20 -- .../data/hexcasting/recipe/slate.json | 20 -- .../recipe/slate_amethyst_bricks.json | 16 -- .../recipe/slate_amethyst_bricks_small.json | 16 -- .../recipe/slate_amethyst_pillar.json | 16 -- .../recipe/slate_amethyst_tiles.json | 16 -- .../data/hexcasting/recipe/slate_block.json | 24 -- .../recipe/slate_block_from_slates.json | 17 -- .../data/hexcasting/recipe/slate_bricks.json | 18 -- .../slate_bricks_from_slate_bricks_small.json | 12 - .../slate_bricks_small_from_slate_bricks.json | 12 - .../data/hexcasting/recipe/slate_pillar.json | 18 -- .../data/hexcasting/recipe/slate_tiles.json | 18 -- .../data/hexcasting/recipe/spellbook.json | 27 --- .../data/hexcasting/recipe/staff/acacia.json | 24 -- .../data/hexcasting/recipe/staff/bamboo.json | 24 -- .../data/hexcasting/recipe/staff/birch.json | 24 -- .../data/hexcasting/recipe/staff/cherry.json | 24 -- .../data/hexcasting/recipe/staff/crimson.json | 24 -- .../hexcasting/recipe/staff/dark_oak.json | 24 -- .../data/hexcasting/recipe/staff/edified.json | 24 -- .../data/hexcasting/recipe/staff/jungle.json | 24 -- .../hexcasting/recipe/staff/mangrove.json | 24 -- .../hexcasting/recipe/staff/mindsplice.json | 24 -- .../data/hexcasting/recipe/staff/oak.json | 24 -- .../hexcasting/recipe/staff/quenched.json | 24 -- .../data/hexcasting/recipe/staff/spruce.json | 24 -- .../data/hexcasting/recipe/staff/warped.json | 24 -- .../recipe/stonecutting/amethyst_bricks.json | 8 - .../stonecutting/amethyst_bricks_small.json | 8 - .../recipe/stonecutting/amethyst_pillar.json | 8 - .../recipe/stonecutting/amethyst_tiles.json | 10 - .../stonecutting/quenched_allay_bricks.json | 8 - .../quenched_allay_bricks_small.json | 8 - .../stonecutting/quenched_allay_tiles.json | 8 - .../recipe/stonecutting/slate_bricks.json | 8 - .../stonecutting/slate_bricks_small.json | 8 - .../recipe/stonecutting/slate_pillar.json | 8 - .../recipe/stonecutting/slate_tiles.json | 8 - .../recipe/stripped_edified_wood.json | 17 -- .../data/hexcasting/recipe/sub_sandwich.json | 27 --- .../data/hexcasting/recipe/thought_knot.json | 16 -- .../data/hexcasting/recipe/trinket.json | 21 -- .../hexcasting/recipe/uuid_colorizer.json | 24 -- .../block/brainswept_circle_components.json | 6 - .../tags/block/cheap_to_break_block.json | 6 - .../hexcasting/tags/block/directrices.json | 6 - .../hexcasting/tags/block/edified_logs.json | 12 - .../hexcasting/tags/block/edified_planks.json | 7 - .../data/hexcasting/tags/block/impeti.json | 7 - .../hexcasting/tags/block/water_plants.json | 8 - .../action/can_start_enlighten.json | 18 -- .../hexcasting/action/per_world_pattern.json | 18 -- .../action/requires_enlightenment.json | 18 -- .../hexcasting/tags/item/amethyst_blocks.json | 10 - .../item/brainswept_circle_components.json | 6 - .../hexcasting/tags/item/directrices.json | 6 - .../hexcasting/tags/item/edified_logs.json | 12 - .../hexcasting/tags/item/edified_planks.json | 7 - .../tags/item/grants_root_advancement.json | 8 - .../data/hexcasting/tags/item/impeti.json | 7 - .../data/hexcasting/tags/item/phial_base.json | 5 - .../tags/item/quenched_allay_blocks.json | 9 - .../hexcasting/tags/item/seal_materials.json | 5 - .../hexcasting/tags/item/slate_blocks.json | 10 - .../data/hexcasting/tags/item/staves.json | 18 -- .../data/minecraft/tags/block/buttons.json | 5 - .../tags/block/crystal_sound_blocks.json | 8 - .../data/minecraft/tags/block/doors.json | 5 - .../minecraft/tags/block/fence_gates.json | 5 - .../data/minecraft/tags/block/fences.json | 5 - .../data/minecraft/tags/block/leaves.json | 7 - .../data/minecraft/tags/block/logs.json | 12 - .../minecraft/tags/block/logs_that_burn.json | 12 - .../minecraft/tags/block/mineable/axe.json | 25 --- .../minecraft/tags/block/mineable/hoe.json | 7 - .../tags/block/mineable/pickaxe.json | 30 --- .../minecraft/tags/block/mineable/shovel.json | 5 - .../data/minecraft/tags/block/planks.json | 7 - .../minecraft/tags/block/pressure_plates.json | 5 - .../data/minecraft/tags/block/slabs.json | 5 - .../data/minecraft/tags/block/stairs.json | 5 - .../data/minecraft/tags/block/trapdoors.json | 5 - .../tags/block/unstable_bottom_center.json | 5 - .../minecraft/tags/block/wooden_buttons.json | 5 - .../minecraft/tags/block/wooden_doors.json | 5 - .../minecraft/tags/block/wooden_fences.json | 6 - .../tags/block/wooden_pressure_plates.json | 5 - .../minecraft/tags/block/wooden_slabs.json | 5 - .../minecraft/tags/block/wooden_stairs.json | 5 - .../tags/block/wooden_trapdoors.json | 5 - .../tags/damage_type/bypasses_armor.json | 5 - .../tags/damage_type/bypasses_effects.json | 5 - .../tags/damage_type/bypasses_shield.json | 5 - .../data/minecraft/tags/item/buttons.json | 5 - .../data/minecraft/tags/item/doors.json | 5 - .../data/minecraft/tags/item/leaves.json | 7 - .../data/minecraft/tags/item/logs.json | 12 - .../minecraft/tags/item/logs_that_burn.json | 12 - .../data/minecraft/tags/item/planks.json | 7 - .../data/minecraft/tags/item/slabs.json | 5 - .../data/minecraft/tags/item/trapdoors.json | 5 - .../minecraft/tags/item/wooden_buttons.json | 5 - .../minecraft/tags/item/wooden_doors.json | 5 - .../tags/item/wooden_pressure_plates.json | 5 - .../minecraft/tags/item/wooden_slabs.json | 5 - .../minecraft/tags/item/wooden_trapdoors.json | 5 - .../loot_modifiers/global_loot_modifiers.json | 37 --- .../hexcasting/forge/ForgeHexConfig.java | 1 + .../forge/datagen/ForgeHexLootModGen.java | 3 + .../forge/datagen/xplat/HexItemModels.java | 11 +- .../forge/network/ForgePacketHandler.java | 2 - 2362 files changed, 73 insertions(+), 40359 deletions(-) delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/conjured.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/abacus.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/battery.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/lens.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/birch.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/edified.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/oak.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json delete mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/warped.json delete mode 100644 Common/src/generated/resources/data/create/tags/block/brittle.json delete mode 100644 Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json delete mode 100644 Common/src/generated/resources/data/forge/tags/item/gems.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/root.json delete mode 100644 Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json delete mode 100644 Common/src/generated/resources/data/hexcasting/damage_type/overcast.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/abacus.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/artifact.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/cypher.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_button.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_door.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/focus.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/lens.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_block.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/spellbook.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/trinket.json delete mode 100644 Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/directrices.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/impeti.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/directrices.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/impeti.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json delete mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/staves.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/buttons.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/doors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/fences.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/leaves.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/logs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/planks.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/slabs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/stairs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/buttons.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/doors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/leaves.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/logs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/planks.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/slabs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json delete mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json delete mode 100644 Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json delete mode 100644 Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json delete mode 100644 Fabric/src/generated/resources/data/c/tags/item/gems.json delete mode 100644 Fabric/src/generated/resources/data/create/tags/block/brittle.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/lens.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json delete mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fences.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/planks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/planks.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json delete mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/data/create/tags/block/brittle.json delete mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/gems.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/root.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json delete mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json delete mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json delete mode 100644 Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json deleted file mode 100644 index 2f79ec12a3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "variants": { - "facing=east,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 90 - }, - "facing=east,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 90 - } - ], - "facing=north,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true - }, - "facing=north,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true - } - ], - "facing=south,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 180 - }, - "facing=south,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 180 - } - ], - "facing=west,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 270 - }, - "facing=west,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 270 - } - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json deleted file mode 100644 index c4552b4918..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/akashic_ligature" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json deleted file mode 100644 index c2aa512a1e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/akashic_record" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json deleted file mode 100644 index 267e1b4d43..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_bricks" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json deleted file mode 100644 index 66b78f9a12..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_bricks_small" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json deleted file mode 100644 index c27c62ffcb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/amethyst_dust_block" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json deleted file mode 100644 index db8af585b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/amethyst_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json deleted file mode 100644 index 257e10ca4d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "variants": { - "facing=down": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 180 - }, - "facing=east": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 90 - }, - "facing=north": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90 - }, - "facing=south": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 180 - }, - "facing=up": { - "model": "hexcasting:block/deco/amethyst_pillar" - }, - "facing=west": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json deleted file mode 100644 index 03a9ebb676..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "variants": { - "facing=down,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce", - "x": 180 - }, - "facing=down,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce", - "x": 180 - }, - "facing=east,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 90 - }, - "facing=east,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 90 - }, - "facing=north,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90 - }, - "facing=north,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90 - }, - "facing=south,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 180 - }, - "facing=south,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 180 - }, - "facing=up,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce" - }, - "facing=up,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce" - }, - "facing=west,waterlogged=false": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 270 - }, - "facing=west,waterlogged=true": { - "model": "hexcasting:block/amethyst_sconce", - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json deleted file mode 100644 index b716f2a5a9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_tiles" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json deleted file mode 100644 index 1c809c022b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/ancient_scroll_paper" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json deleted file mode 100644 index 3a632c39f3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/ancient_scroll_paper_lantern" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json deleted file mode 100644 index 10383418f7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/aventurine_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json deleted file mode 100644 index 3207814e50..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/citrine_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json deleted file mode 100644 index 5e8ffe700c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/conjured" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json deleted file mode 100644 index 5e8ffe700c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/conjured" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json deleted file mode 100644 index 155f55cfe6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_down", - "x": 90 - }, - "energized=false,facing=down,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_down", - "x": 90 - }, - "energized=false,facing=down,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_down", - "x": 90 - }, - "energized=false,facing=east,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_east", - "y": 90 - }, - "energized=false,facing=east,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_east", - "y": 90 - }, - "energized=false,facing=east,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_east", - "y": 90 - }, - "energized=false,facing=north,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_north" - }, - "energized=false,facing=north,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_north" - }, - "energized=false,facing=north,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_north" - }, - "energized=false,facing=south,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_south", - "y": 180 - }, - "energized=false,facing=south,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_south", - "y": 180 - }, - "energized=false,facing=south,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_south", - "y": 180 - }, - "energized=false,facing=up,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_up", - "x": -90 - }, - "energized=false,facing=up,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_up", - "x": -90 - }, - "energized=false,facing=up,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_up", - "x": -90 - }, - "energized=false,facing=west,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_west", - "y": 270 - }, - "energized=false,facing=west,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_west", - "y": 270 - }, - "energized=false,facing=west,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_west", - "y": 270 - }, - "energized=true,facing=down,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_down", - "x": 90 - }, - "energized=true,facing=down,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_down", - "x": 90 - }, - "energized=true,facing=down,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_down", - "x": 90 - }, - "energized=true,facing=east,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_east", - "y": 90 - }, - "energized=true,facing=east,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_east", - "y": 90 - }, - "energized=true,facing=east,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_east", - "y": 90 - }, - "energized=true,facing=north,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_north" - }, - "energized=true,facing=north,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_north" - }, - "energized=true,facing=north,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_north" - }, - "energized=true,facing=south,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_south", - "y": 180 - }, - "energized=true,facing=south,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_south", - "y": 180 - }, - "energized=true,facing=south,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_south", - "y": 180 - }, - "energized=true,facing=up,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_up", - "x": -90 - }, - "energized=true,facing=up,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_up", - "x": -90 - }, - "energized=true,facing=up,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_up", - "x": -90 - }, - "energized=true,facing=west,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_west", - "y": 270 - }, - "energized=true,facing=west,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_west", - "y": 270 - }, - "energized=true,facing=west,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json deleted file mode 100644 index 33b013562c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/directrix/empty/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/directrix/empty/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/directrix/empty/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/directrix/empty/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/directrix/empty/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/directrix/empty/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/directrix/empty/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/directrix/empty/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/directrix/empty/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/directrix/empty/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/directrix/empty/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/directrix/empty/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json deleted file mode 100644 index c93068cabf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_down", - "x": 90 - }, - "energized=false,facing=down,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_down", - "x": 90 - }, - "energized=false,facing=east,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_east", - "y": 90 - }, - "energized=false,facing=east,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_east", - "y": 90 - }, - "energized=false,facing=north,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_north" - }, - "energized=false,facing=north,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_north" - }, - "energized=false,facing=south,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_south", - "y": 180 - }, - "energized=false,facing=south,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_south", - "y": 180 - }, - "energized=false,facing=up,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_up", - "x": -90 - }, - "energized=false,facing=up,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_up", - "x": -90 - }, - "energized=false,facing=west,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_west", - "y": 270 - }, - "energized=false,facing=west,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_west", - "y": 270 - }, - "energized=true,facing=down,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_down", - "x": 90 - }, - "energized=true,facing=down,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_down", - "x": 90 - }, - "energized=true,facing=east,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east", - "y": 90 - }, - "energized=true,facing=east,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_east", - "y": 90 - }, - "energized=true,facing=north,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_north" - }, - "energized=true,facing=north,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_north" - }, - "energized=true,facing=south,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_south", - "y": 180 - }, - "energized=true,facing=south,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_south", - "y": 180 - }, - "energized=true,facing=up,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_up", - "x": -90 - }, - "energized=true,facing=up,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_up", - "x": -90 - }, - "energized=true,facing=west,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_west", - "y": 270 - }, - "energized=true,facing=west,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json deleted file mode 100644 index 81efad6fd6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json +++ /dev/null @@ -1,118 +0,0 @@ -{ - "variants": { - "face=ceiling,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 270 - }, - "face=ceiling,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 270 - }, - "face=ceiling,facing=north,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 180 - }, - "face=ceiling,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 180 - }, - "face=ceiling,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180 - }, - "face=ceiling,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180 - }, - "face=ceiling,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 90 - }, - "face=ceiling,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 90 - }, - "face=floor,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 90 - }, - "face=floor,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 90 - }, - "face=floor,facing=north,powered=false": { - "model": "hexcasting:block/edified_button" - }, - "face=floor,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed" - }, - "face=floor,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 180 - }, - "face=floor,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 180 - }, - "face=floor,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 270 - }, - "face=floor,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 270 - }, - "face=wall,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 90 - }, - "face=wall,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 90 - }, - "face=wall,facing=north,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90 - }, - "face=wall,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90 - }, - "face=wall,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 180 - }, - "face=wall,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 180 - }, - "face=wall,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 270 - }, - "face=wall,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json deleted file mode 100644 index 029d3bd5d2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "variants": { - "facing=east,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left" - }, - "facing=east,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 90 - }, - "facing=east,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right" - }, - "facing=east,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 270 - }, - "facing=east,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left" - }, - "facing=east,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 90 - }, - "facing=east,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right" - }, - "facing=east,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 270 - }, - "facing=north,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 270 - }, - "facing=north,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open" - }, - "facing=north,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 270 - }, - "facing=north,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 180 - }, - "facing=north,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 270 - }, - "facing=north,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open" - }, - "facing=north,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 270 - }, - "facing=north,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 180 - }, - "facing=south,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 90 - }, - "facing=south,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 180 - }, - "facing=south,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 90 - }, - "facing=south,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open" - }, - "facing=south,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 90 - }, - "facing=south,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 180 - }, - "facing=south,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 90 - }, - "facing=south,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open" - }, - "facing=west,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 180 - }, - "facing=west,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 270 - }, - "facing=west,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 180 - }, - "facing=west,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 90 - }, - "facing=west,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 180 - }, - "facing=west,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 270 - }, - "facing=west,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 180 - }, - "facing=west,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json deleted file mode 100644 index 7167013cf7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "hexcasting:block/edified_fence_post" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true - }, - "when": { - "north": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "true" - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json deleted file mode 100644 index f925ddfddd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "variants": { - "facing=east,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 270 - }, - "facing=north,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 180 - }, - "facing=south,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true - }, - "facing=south,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true - }, - "facing=south,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true - }, - "facing=south,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true - }, - "facing=west,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json deleted file mode 100644 index 4cd8fe5d14..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json deleted file mode 100644 index 7526dda321..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_amethyst_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_amethyst" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_amethyst_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json deleted file mode 100644 index ed8e454e7e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_aventurine_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_aventurine" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_aventurine_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json deleted file mode 100644 index 258b377acb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_citrine_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_citrine" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_citrine_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json deleted file mode 100644 index 078f72a986..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_purple_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_purple" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_purple_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json deleted file mode 100644 index 17d99a7903..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/edified_panel" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json deleted file mode 100644 index a2d790f061..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/edified_planks", - "weight": 3 - }, - { - "model": "hexcasting:block/edified_planks_2", - "weight": 3 - }, - { - "model": "hexcasting:block/edified_planks_3" - } - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json deleted file mode 100644 index 6da4bab988..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "variants": { - "powered=false": { - "model": "hexcasting:block/edified_pressure_plate" - }, - "powered=true": { - "model": "hexcasting:block/edified_pressure_plate_down" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json deleted file mode 100644 index 6a4d4be0d2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "variants": { - "type=bottom": { - "model": "hexcasting:block/edified_slab" - }, - "type=double": { - "model": "hexcasting:block/edified_planks" - }, - "type=top": { - "model": "hexcasting:block/edified_slab_top" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json deleted file mode 100644 index 23ac40ca7e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner" - }, - "facing=east,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer" - }, - "facing=east,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs" - }, - "facing=east,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180 - }, - "facing=north,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 270 - }, - "facing=north,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=south,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner" - }, - "facing=south,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer" - }, - "facing=south,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 90 - }, - "facing=south,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 180 - }, - "facing=west,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 180 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json deleted file mode 100644 index 23d71da006..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/edified_tile" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json deleted file mode 100644 index 0df527ca32..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 90 - }, - "facing=east,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 90 - }, - "facing=east,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 90 - }, - "facing=east,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 270 - }, - "facing=north,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom" - }, - "facing=north,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open" - }, - "facing=north,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top" - }, - "facing=north,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 180 - }, - "facing=south,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 180 - }, - "facing=south,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 180 - }, - "facing=south,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 180 - }, - "facing=south,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180 - }, - "facing=west,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 270 - }, - "facing=west,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 270 - }, - "facing=west,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 270 - }, - "facing=west,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json deleted file mode 100644 index 1d963101fc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_wood_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_wood" - }, - "axis=z": { - "model": "hexcasting:block/edified_wood_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json deleted file mode 100644 index 057ad53aa6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/empty/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/empty/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/empty/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/empty/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/empty/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/empty/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/empty/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/empty/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/empty/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/empty/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/empty/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/empty/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json deleted file mode 100644 index 0db9af4b2d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/look/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/look/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/look/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/look/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/look/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/look/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/look/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/look/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/look/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/look/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/look/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/look/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json deleted file mode 100644 index 2ad46e21cd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_down", - "x": 90 - }, - "energized=false,facing=down,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_down", - "x": 90 - }, - "energized=false,facing=east,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_east", - "y": 90 - }, - "energized=false,facing=east,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_east", - "y": 90 - }, - "energized=false,facing=north,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_north" - }, - "energized=false,facing=north,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_north" - }, - "energized=false,facing=south,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_south", - "y": 180 - }, - "energized=false,facing=south,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_south", - "y": 180 - }, - "energized=false,facing=up,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_up", - "x": -90 - }, - "energized=false,facing=up,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_up", - "x": -90 - }, - "energized=false,facing=west,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_west", - "y": 270 - }, - "energized=false,facing=west,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_west", - "y": 270 - }, - "energized=true,facing=down,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_down", - "x": 90 - }, - "energized=true,facing=down,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_down", - "x": 90 - }, - "energized=true,facing=east,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_east", - "y": 90 - }, - "energized=true,facing=east,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_east", - "y": 90 - }, - "energized=true,facing=north,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_north" - }, - "energized=true,facing=north,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_north" - }, - "energized=true,facing=south,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_south", - "y": 180 - }, - "energized=true,facing=south,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_south", - "y": 180 - }, - "energized=true,facing=up,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_up", - "x": -90 - }, - "energized=true,facing=up,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_up", - "x": -90 - }, - "energized=true,facing=west,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_west", - "y": 270 - }, - "energized=true,facing=west,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json deleted file mode 100644 index 32a772b27e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json deleted file mode 100644 index c6bce09cb5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json deleted file mode 100644 index e3d66f7ed3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_bricks" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json deleted file mode 100644 index 72aad9ca91..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_bricks_small" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json deleted file mode 100644 index ddb791a0b1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_tiles" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json deleted file mode 100644 index 2621fa1b04..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/scroll_paper" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json deleted file mode 100644 index 328e1b46d9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/scroll_paper_lantern" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json deleted file mode 100644 index 8d7a817cc1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "variants": { - "energized=false,face=ceiling,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=floor,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=wall,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 90 - }, - "energized=false,face=wall,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90 - }, - "energized=false,face=wall,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 180 - }, - "energized=false,face=wall,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 270 - }, - "energized=true,face=ceiling,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=floor,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=wall,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 90 - }, - "energized=true,face=wall,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90 - }, - "energized=true,face=wall,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 180 - }, - "energized=true,face=wall,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json deleted file mode 100644 index e99315f3fa..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_0" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_1" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_2" - } - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json deleted file mode 100644 index e6b5557c2f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_0" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_1" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_2" - } - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json deleted file mode 100644 index 056bc449b3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/slate_amethyst_pillar_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/slate_amethyst_pillar" - }, - "axis=z": { - "model": "hexcasting:block/slate_amethyst_pillar_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json deleted file mode 100644 index 4c5f5d614b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_amethyst_tiles" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json deleted file mode 100644 index 35169aaa2f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/slate_block" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json deleted file mode 100644 index 003a0daafe..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_bricks" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json deleted file mode 100644 index cdd21fd4d3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_bricks_small" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json deleted file mode 100644 index 6d0e098f31..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/slate_pillar_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/slate_pillar" - }, - "axis=z": { - "model": "hexcasting:block/slate_pillar_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json deleted file mode 100644 index 1482ae0827..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_tiles" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json deleted file mode 100644 index cb09f0122f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/stripped_edified_log_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/stripped_edified_log" - }, - "axis=z": { - "model": "hexcasting:block/stripped_edified_log_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json deleted file mode 100644 index b6b89e3f85..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/stripped_edified_wood_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/stripped_edified_wood" - }, - "axis=z": { - "model": "hexcasting:block/stripped_edified_wood_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json deleted file mode 100644 index dd5103c118..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "elements": [ - { - "faces": { - "down": { - "cullface": "down", - "texture": "#top_bottom" - }, - "east": { - "cullface": "east", - "texture": "#side" - }, - "north": { - "cullface": "north", - "texture": "#front" - }, - "south": { - "cullface": "south", - "texture": "#side" - }, - "up": { - "cullface": "up", - "texture": "#top_bottom" - }, - "west": { - "cullface": "west", - "texture": "#side" - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - }, - { - "faces": { - "north": { - "cullface": "north", - "texture": "#overlay", - "tintindex": 0 - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - } - ], - "render_type": "minecraft:cutout", - "textures": { - "front": "hexcasting:block/akashic_bookshelf", - "particle": "hexcasting:block/akashic_bookshelf_vert", - "side": "hexcasting:block/akashic_bookshelf_horiz", - "top_bottom": "hexcasting:block/akashic_bookshelf_vert" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json deleted file mode 100644 index 2402c6c597..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json deleted file mode 100644 index 4846d3c2e6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json deleted file mode 100644 index 9352317b12..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json deleted file mode 100644 index 4f98ee656b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json deleted file mode 100644 index 9b788e5d7c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/orientable", - "textures": { - "front": "hexcasting:block/akashic_bookshelf", - "side": "hexcasting:block/akashic_bookshelf_horiz", - "top": "hexcasting:block/akashic_bookshelf_vert" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json deleted file mode 100644 index 72a32c3aa8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/akashic_ligature" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json deleted file mode 100644 index 7068b7d62f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "parent": "minecraft:block/block", - "elements": [ - { - "faces": { - "down": { - "cullface": "down", - "texture": "#outer" - }, - "east": { - "cullface": "east", - "texture": "#outer" - }, - "north": { - "cullface": "north", - "texture": "#outer" - }, - "south": { - "cullface": "south", - "texture": "#outer" - }, - "up": { - "cullface": "up", - "texture": "#outer" - }, - "west": { - "cullface": "west", - "texture": "#outer" - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - }, - { - "faces": { - "down": { - "rotation": 180, - "texture": "#inner" - }, - "east": { - "rotation": 180, - "texture": "#inner" - }, - "north": { - "rotation": 180, - "texture": "#inner" - }, - "south": { - "rotation": 180, - "texture": "#inner" - }, - "up": { - "rotation": 180, - "texture": "#inner" - }, - "west": { - "rotation": 180, - "texture": "#inner" - } - }, - "from": [ - 15.75, - 15.75, - 15.75 - ], - "to": [ - 0.25, - 0.25, - 0.25 - ] - } - ], - "render_type": "minecraft:translucent", - "textures": { - "inner": "hexcasting:block/akashic_ligature", - "outer": "hexcasting:block/akashic_record", - "particle": "hexcasting:block/akashic_ligature" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json deleted file mode 100644 index 8fa450ab32..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/cube_half_mirrored", - "textures": { - "all": "hexcasting:block/amethyst_dust_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json deleted file mode 100644 index 463617eb53..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/amethyst_edified_leaves" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json deleted file mode 100644 index 5b5b77bbf0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json deleted file mode 100644 index 19fc5366df..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/ancient_scroll_paper_lantern_bottom", - "side": "hexcasting:block/ancient_scroll_paper_lantern_side", - "top": "hexcasting:block/ancient_scroll_paper_lantern_top" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json deleted file mode 100644 index eb1802e0b9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/aventurine_edified_leaves" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json deleted file mode 100644 index 722076a071..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json deleted file mode 100644 index 3bef12c734..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/citrine_edified_leaves" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json b/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json deleted file mode 100644 index 9f80c11ee0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "render_type": "minecraft:cutout", - "textures": { - "particle": "minecraft:block/amethyst_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json deleted file mode 100644 index 89c8ec51c2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json deleted file mode 100644 index fc1202b603..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json deleted file mode 100644 index 5ee8934b7a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/deco/amethyst_pillar_bottom", - "side": "hexcasting:block/deco/amethyst_pillar_side", - "top": "hexcasting:block/deco/amethyst_pillar_top" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json deleted file mode 100644 index ab9ffcda39..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_tiles" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json deleted file mode 100644 index e0c97c18e6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json deleted file mode 100644 index 61215cda68..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json deleted file mode 100644 index 536da9000b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json deleted file mode 100644 index e45bf99d14..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json deleted file mode 100644 index 2b93f32793..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json deleted file mode 100644 index 91ade20515..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json deleted file mode 100644 index e6b6bd7b22..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json deleted file mode 100644 index 7da0cdfcf8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json deleted file mode 100644 index 3d953c5628..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json deleted file mode 100644 index 6d6150b8d5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json deleted file mode 100644 index 758194fe82..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json deleted file mode 100644 index 5c83c33eb0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json deleted file mode 100644 index 910ec09904..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json deleted file mode 100644 index 4d565a54ae..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json deleted file mode 100644 index a9072bacc0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json deleted file mode 100644 index ad3c92af5d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json deleted file mode 100644 index 1f24ff9a6d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json deleted file mode 100644 index e106adbead..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json deleted file mode 100644 index 2c80ba1498..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_tiles" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json deleted file mode 100644 index 7fb51bcd7c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json deleted file mode 100644 index 3b262eafff..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json deleted file mode 100644 index d18efee914..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_tiles" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json deleted file mode 100644 index 1c75ef18d3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json deleted file mode 100644 index a026dba7ad..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button_pressed", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json deleted file mode 100644 index 610c3ae5b9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_left", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json deleted file mode 100644 index acf2e96275..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_left_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json deleted file mode 100644 index 2eaa905b77..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_right", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json deleted file mode 100644 index 8a46564f74..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_right_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json deleted file mode 100644 index 90ea9df1d9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_left", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json deleted file mode 100644 index 5573390683..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_left_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json deleted file mode 100644 index 3a78e863b7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_right", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json deleted file mode 100644 index 26d8c1a200..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_right_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json deleted file mode 100644 index c3015ca6d3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json deleted file mode 100644 index ac141eb406..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_open", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json deleted file mode 100644 index ea98b16740..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_wall", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json deleted file mode 100644 index 86d82ca2fc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_wall_open", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json deleted file mode 100644 index 281f2acc6d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/fence_post", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json deleted file mode 100644 index 707af51bf2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/fence_side", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json deleted file mode 100644 index 9ba1530b0c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json deleted file mode 100644 index e9833c81a8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_amethyst" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json deleted file mode 100644 index fdfc8bd1c1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_amethyst" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json deleted file mode 100644 index f9f832f6ee..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_aventurine" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json deleted file mode 100644 index e7ddcd8ed5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_aventurine" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json deleted file mode 100644 index ea1b1d60a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_citrine" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json deleted file mode 100644 index 2ae70b9aef..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_citrine" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json deleted file mode 100644 index 84e434e72a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json deleted file mode 100644 index 70736370d2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_purple" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json deleted file mode 100644 index 235890db18..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_purple" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json deleted file mode 100644 index 3d790f2af0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_panel" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json deleted file mode 100644 index a722301054..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json deleted file mode 100644 index d0c4c5832b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json deleted file mode 100644 index bad8e6ac05..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json deleted file mode 100644 index 5a1b2b5727..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/pressure_plate_up", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json deleted file mode 100644 index eeaa36461c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/pressure_plate_down", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json deleted file mode 100644 index 09d601ec7b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json deleted file mode 100644 index f4d2fcf98c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab_top", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json deleted file mode 100644 index 6e9ae9aaae..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json deleted file mode 100644 index 7597f2c8a4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/inner_stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json deleted file mode 100644 index 62d7ab50a9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/outer_stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json deleted file mode 100644 index 595adf007a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_tile" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json deleted file mode 100644 index 9c65b36965..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_bottom", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json deleted file mode 100644 index 40217afd9c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_open", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json deleted file mode 100644 index 325f5d4351..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_top", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json deleted file mode 100644 index 22851df079..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json deleted file mode 100644 index 72149b4bc9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json deleted file mode 100644 index 6c2a8abe6d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json deleted file mode 100644 index 6c2a8abe6d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json deleted file mode 100644 index 441d91052a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json deleted file mode 100644 index a561a358cc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json deleted file mode 100644 index a6fe237391..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json deleted file mode 100644 index e0c97c18e6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json deleted file mode 100644 index 2b93f32793..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json deleted file mode 100644 index 3d953c5628..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json deleted file mode 100644 index 621451b72c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/scroll_paper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json deleted file mode 100644 index 3c16a2113f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/scroll_paper_lantern_bottom", - "side": "hexcasting:block/scroll_paper_lantern_side", - "top": "hexcasting:block/scroll_paper_lantern_top" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json deleted file mode 100644 index 1ec3ef6cf3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/deco/slate_amethyst_pillar_end", - "side": "hexcasting:block/deco/slate_amethyst_pillar_side" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json deleted file mode 100644 index bbd24d1c98..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/deco/slate_amethyst_pillar_end", - "side": "hexcasting:block/deco/slate_amethyst_pillar_side" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json deleted file mode 100644 index 2d8635f925..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/slate_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json deleted file mode 100644 index 697f4daab2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/deco/slate_pillar_end", - "side": "hexcasting:block/deco/slate_pillar_side" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json deleted file mode 100644 index cca16a0c07..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/deco/slate_pillar_end", - "side": "hexcasting:block/deco/slate_pillar_side" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json deleted file mode 100644 index 4aa871e92c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/stripped_edified_log_top", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json deleted file mode 100644 index 0925c23c78..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/stripped_edified_log_top", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json deleted file mode 100644 index 8ef17c0d21..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/stripped_edified_log", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json deleted file mode 100644 index 57dcfcc53c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/stripped_edified_log", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json b/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json deleted file mode 100644 index f6947c4360..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/abacus" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json deleted file mode 100644 index 7c88c3e218..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf_empty" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json deleted file mode 100644 index de9a37be49..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_ligature" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json deleted file mode 100644 index 1ea5e0eeb6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_record" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json deleted file mode 100644 index 5ec0842948..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json deleted file mode 100644 index 1b8fe48dd2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json deleted file mode 100644 index 140659dfab..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/amethyst_dust" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json deleted file mode 100644 index 8cd53fc3ab..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_dust_block" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json deleted file mode 100644 index d6015ea1f2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json deleted file mode 100644 index 98d9d0c82f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json deleted file mode 100644 index bb1657f9a1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_sconce" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json deleted file mode 100644 index b8ecd40c70..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json deleted file mode 100644 index 8e99cad0e1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/ancient" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json deleted file mode 100644 index ffc8b5e1cc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/ancient_cypher", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json deleted file mode 100644 index b38ad18d6d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_ancient_cypher", - "layer1": "hexcasting:item/cad/0_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json deleted file mode 100644 index e8b7b12d55..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json deleted file mode 100644 index 856b0a26d7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_ancient_cypher", - "layer1": "hexcasting:item/cad/1_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json deleted file mode 100644 index 3badfcdd0f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json deleted file mode 100644 index effb9e0198..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_ancient_cypher", - "layer1": "hexcasting:item/cad/2_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json deleted file mode 100644 index 98aabd91e8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json deleted file mode 100644 index 2f19e9feea..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_ancient_cypher", - "layer1": "hexcasting:item/cad/3_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json deleted file mode 100644 index 93318f7bc4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json deleted file mode 100644 index 081cfd65c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_ancient_cypher", - "layer1": "hexcasting:item/cad/4_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json deleted file mode 100644 index 836e50f966..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json deleted file mode 100644 index 2ab2d47128..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_ancient_cypher", - "layer1": "hexcasting:item/cad/5_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json deleted file mode 100644 index bf9c9fe505..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json deleted file mode 100644 index 199292d90f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_ancient_cypher", - "layer1": "hexcasting:item/cad/6_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json deleted file mode 100644 index 56e0653080..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_ancient_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json deleted file mode 100644 index b408892c14..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_ancient_cypher", - "layer1": "hexcasting:item/cad/7_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json deleted file mode 100644 index 810d0e68c5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json deleted file mode 100644 index 39cf0ac289..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json deleted file mode 100644 index d0db0e434f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/artifact", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/artifact_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/artifact_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/artifact_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/artifact_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/artifact_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/artifact_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/artifact_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/artifact_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/artifact_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/artifact_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/artifact_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/artifact_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/artifact_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/artifact_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/artifact_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json deleted file mode 100644 index 1e835b5f74..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_artifact", - "layer1": "hexcasting:item/cad/0_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json deleted file mode 100644 index 870900b6f1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json deleted file mode 100644 index a0f005be3f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_artifact", - "layer1": "hexcasting:item/cad/1_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json deleted file mode 100644 index f2f7fbea97..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json deleted file mode 100644 index cade3931d1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_artifact", - "layer1": "hexcasting:item/cad/2_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json deleted file mode 100644 index 2cb6553e13..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json deleted file mode 100644 index 23c0456285..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_artifact", - "layer1": "hexcasting:item/cad/3_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json deleted file mode 100644 index 216c308d2c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json deleted file mode 100644 index d48959f9d1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_artifact", - "layer1": "hexcasting:item/cad/4_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json deleted file mode 100644 index d3ca0607a4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json deleted file mode 100644 index 50a87b02a5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_artifact", - "layer1": "hexcasting:item/cad/5_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json deleted file mode 100644 index c66d93ec85..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json deleted file mode 100644 index 3d5f969ddf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_artifact", - "layer1": "hexcasting:item/cad/6_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json deleted file mode 100644 index 1b89f90904..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json deleted file mode 100644 index 0e9043060d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_artifact", - "layer1": "hexcasting:item/cad/7_artifact_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json deleted file mode 100644 index 0ae3302116..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/battery.json b/Common/src/generated/resources/assets/hexcasting/models/item/battery.json deleted file mode 100644 index 11be0c6cd1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/battery.json +++ /dev/null @@ -1,179 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/phial_small_0", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_small_1", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_small_2", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_small_3", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_small_4", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_medium_0", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_medium_1", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_medium_2", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_medium_3", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_medium_4", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_large_0", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_large_1", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_large_2", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_large_3", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_large_4", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_larger_0", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_larger_1", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_larger_2", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_larger_3", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_larger_4", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_largest_0", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_largest_1", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_largest_2", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_largest_3", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_largest_4", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json deleted file mode 100644 index 2d147958cb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/charged_amethyst" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json b/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json deleted file mode 100644 index 1fb6398518..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/cherry" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json deleted file mode 100644 index f44ca6c924..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json deleted file mode 100644 index a0bab4ff76..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "minecraft:item/amethyst_shard" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json deleted file mode 100644 index a0bab4ff76..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "minecraft:item/amethyst_shard" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json b/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json deleted file mode 100644 index 452b44f612..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/creative_unlocker" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json deleted file mode 100644 index 1a93187096..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/cypher", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/cypher_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/cypher_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/cypher_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/cypher_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/cypher_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/cypher_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/cypher_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/cypher_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/cypher_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/cypher_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/cypher_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/cypher_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/cypher_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/cypher_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/cypher_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json deleted file mode 100644 index 190be7e602..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_cypher", - "layer1": "hexcasting:item/cad/0_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json deleted file mode 100644 index 71a9ff7cc0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json deleted file mode 100644 index abff99cd2f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_cypher", - "layer1": "hexcasting:item/cad/1_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json deleted file mode 100644 index f7b22a7958..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json deleted file mode 100644 index 75143f8a30..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_cypher", - "layer1": "hexcasting:item/cad/2_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json deleted file mode 100644 index da55138305..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json deleted file mode 100644 index cbac2eaf44..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_cypher", - "layer1": "hexcasting:item/cad/3_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json deleted file mode 100644 index 90430a8f8a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json deleted file mode 100644 index e56ed90c0a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_cypher", - "layer1": "hexcasting:item/cad/4_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json deleted file mode 100644 index 83f0da6e92..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json deleted file mode 100644 index 9561773539..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_cypher", - "layer1": "hexcasting:item/cad/5_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json deleted file mode 100644 index bdb310d836..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json deleted file mode 100644 index f9ed07c951..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_cypher", - "layer1": "hexcasting:item/cad/6_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json deleted file mode 100644 index 29e4768e9a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json deleted file mode 100644 index 2de0bb8752..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_cypher", - "layer1": "hexcasting:item/cad/7_cypher_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json deleted file mode 100644 index 9041330dd9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/default" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json deleted file mode 100644 index cd729d804c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/boolean/lit_false_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json deleted file mode 100644 index 98be3ef487..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/empty/dim_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json deleted file mode 100644 index e2b947d5a9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json deleted file mode 100644 index 2f55b6c22b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_black" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json deleted file mode 100644 index add421a999..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_blue" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json deleted file mode 100644 index 3be301eb1a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_brown" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json deleted file mode 100644 index c436f3155b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_cyan" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json deleted file mode 100644 index 146f01411c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_gray" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json deleted file mode 100644 index 679f147944..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_green" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json deleted file mode 100644 index 433877e853..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_light_blue" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json deleted file mode 100644 index f5625b67c2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_light_gray" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json deleted file mode 100644 index c1cf22959e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_lime" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json deleted file mode 100644 index 12dcaa82c4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_magenta" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json deleted file mode 100644 index 99679c17f8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_orange" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json deleted file mode 100644 index c138e93ff0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_pink" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json deleted file mode 100644 index d31e3b601c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_purple" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json deleted file mode 100644 index 1fb8f9dd4d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_red" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json deleted file mode 100644 index db4d15eb32..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_white" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json deleted file mode 100644 index 594bb0a09d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_yellow" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json deleted file mode 100644 index e18736c2c8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button_inventory", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json deleted file mode 100644 index 5d6fb8d7ff..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/edified_door" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json deleted file mode 100644 index db31b01904..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_fence_inventory" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json deleted file mode 100644 index 3dfe521195..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_fence_gate" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json deleted file mode 100644 index d3c7aeeb06..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json deleted file mode 100644 index 8e80eb679a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_amethyst" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json deleted file mode 100644 index 45007ec40b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_aventurine" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json deleted file mode 100644 index 9cae394851..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_citrine" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json deleted file mode 100644 index 62c67453ce..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_purple" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json deleted file mode 100644 index 355e2765e1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_panel" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json deleted file mode 100644 index 4ed5d45aab..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_planks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json deleted file mode 100644 index 921f7f5bd0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_pressure_plate" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json deleted file mode 100644 index 4772af6ed1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_slab" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json deleted file mode 100644 index 90eb4d5123..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_stairs" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json deleted file mode 100644 index 05702f6ed8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_tile" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json deleted file mode 100644 index 8c89f1e881..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_trapdoor_bottom" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json deleted file mode 100644 index c9bfee3a01..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_wood" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus.json deleted file mode 100644 index 78328a9dee..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/focus", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_0_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_0_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_1", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_1_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_1_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_2", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_2_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_2_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_3", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_3_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_3_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_4", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_4_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_4_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_5", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_5_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_5_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_6", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_6_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_6_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_7", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/focus_7_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/focus_7_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json deleted file mode 100644 index 508a3497f6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_focus_filled", - "layer1": "hexcasting:item/cad/0_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json deleted file mode 100644 index 0a64292241..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_focus_sealed", - "layer1": "hexcasting:item/cad/0_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json deleted file mode 100644 index 75d8bf400d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json deleted file mode 100644 index bd04934627..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_filled", - "layer1": "hexcasting:item/cad/1_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json deleted file mode 100644 index 001bf05b5a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_sealed", - "layer1": "hexcasting:item/cad/1_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json deleted file mode 100644 index a9ef859978..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json deleted file mode 100644 index 05c2799dfc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_filled", - "layer1": "hexcasting:item/cad/2_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json deleted file mode 100644 index 1c7c230bef..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_sealed", - "layer1": "hexcasting:item/cad/2_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json deleted file mode 100644 index fb366d08b2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json deleted file mode 100644 index 3ad27dfcdf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_filled", - "layer1": "hexcasting:item/cad/3_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json deleted file mode 100644 index 447b7b4198..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_sealed", - "layer1": "hexcasting:item/cad/3_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json deleted file mode 100644 index a3c1bf4eb2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json deleted file mode 100644 index 8b9eb2024f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_filled", - "layer1": "hexcasting:item/cad/4_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json deleted file mode 100644 index 2831235f44..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_sealed", - "layer1": "hexcasting:item/cad/4_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json deleted file mode 100644 index e13b4fa14b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json deleted file mode 100644 index cbac2be535..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_filled", - "layer1": "hexcasting:item/cad/5_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json deleted file mode 100644 index 248801d925..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_sealed", - "layer1": "hexcasting:item/cad/5_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json deleted file mode 100644 index 3bc3f8518f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json deleted file mode 100644 index e950df1223..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_filled", - "layer1": "hexcasting:item/cad/6_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json deleted file mode 100644 index c10282e6b1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_sealed", - "layer1": "hexcasting:item/cad/6_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json deleted file mode 100644 index 8ad8085617..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json deleted file mode 100644 index e6d7b1f28d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_filled", - "layer1": "hexcasting:item/cad/7_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json deleted file mode 100644 index 52d149f4ae..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_sealed", - "layer1": "hexcasting:item/cad/7_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json deleted file mode 100644 index 68e7192da1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/empty/dim_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json deleted file mode 100644 index 73f69303be..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/look/lit_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json deleted file mode 100644 index 523b5343b6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/redstone/lit_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json deleted file mode 100644 index 381232171f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/rightclick/lit_east" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json b/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json deleted file mode 100644 index 22447e1fbd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/jeweler_hammer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/lens.json b/Common/src/generated/resources/assets/hexcasting/models/item/lens.json deleted file mode 100644 index 2fdc8f9ce5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/lens.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "display": { - "head": { - "scale": [ - 0.4, - 0.4, - 0.4 - ], - "translation": [ - -2.5, - 0, - -8 - ] - } - }, - "textures": { - "layer0": "hexcasting:item/lens" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json b/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json deleted file mode 100644 index 2b2f9e66fa..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/lore_fragment" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json b/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json deleted file mode 100644 index f40e6b8ab1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/old" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json b/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json deleted file mode 100644 index a840c0e427..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/patchouli_book" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json deleted file mode 100644 index db3db02acd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json deleted file mode 100644 index bdff2d1022..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json deleted file mode 100644 index 9c09bea449..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json deleted file mode 100644 index 085960c8d8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json deleted file mode 100644 index c39357f8de..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json deleted file mode 100644 index d5e18bb295..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json deleted file mode 100644 index b19928c486..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json deleted file mode 100644 index ac7ed775cc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json deleted file mode 100644 index b02ce98e95..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json deleted file mode 100644 index 8b313df86f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json deleted file mode 100644 index 0e44b418f2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json deleted file mode 100644 index 4f456814f5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json deleted file mode 100644 index ab2bdf4a2b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json deleted file mode 100644 index 10d70acab3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json deleted file mode 100644 index 3c0682e560..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json deleted file mode 100644 index cb8b4c0920..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json deleted file mode 100644 index a7f30e8113..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json deleted file mode 100644 index f9f5615cf2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json deleted file mode 100644 index dbfcb528bd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json deleted file mode 100644 index a7501a8e1b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json deleted file mode 100644 index fda398e2d9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json deleted file mode 100644 index df784108aa..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json deleted file mode 100644 index f868032c36..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json deleted file mode 100644 index ce4a7999b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json deleted file mode 100644 index bde40839db..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_4" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json deleted file mode 100644 index 9c68ff47ff..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_agender" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json deleted file mode 100644 index eb0fabc595..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_aroace" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json deleted file mode 100644 index 7ea60f31e3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_aromantic" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json deleted file mode 100644 index d40b1f2bcb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_asexual" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json deleted file mode 100644 index e1d4b2d77f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_bisexual" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json deleted file mode 100644 index cd0fe06093..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_demiboy" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json deleted file mode 100644 index afda4cabea..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_demigirl" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json deleted file mode 100644 index 353816c8ad..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_gay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json deleted file mode 100644 index fe3641c797..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_genderfluid" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json deleted file mode 100644 index 270eeb011f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_genderqueer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json deleted file mode 100644 index 506facd3de..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_intersex" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json deleted file mode 100644 index 61d110d4cc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_lesbian" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json deleted file mode 100644 index 0212b47a17..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_nonbinary" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json deleted file mode 100644 index 706726a311..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_pansexual" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json deleted file mode 100644 index e6ecd7890e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_plural" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json deleted file mode 100644 index 2655a8e596..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_transgender" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json deleted file mode 100644 index c6ee6b0951..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/quenched_allay_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json deleted file mode 100644 index c3a1b63856..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_bricks_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json deleted file mode 100644 index c0e376a548..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json deleted file mode 100644 index 495e817b78..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/quenched_shard_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json deleted file mode 100644 index 5ea5cf33c5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_tiles_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json deleted file mode 100644 index bdd43ddc80..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json deleted file mode 100644 index 4cffa2efe0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json deleted file mode 100644 index e24c8dafbf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json deleted file mode 100644 index 208890fe3d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json deleted file mode 100644 index 5453ed3ec6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_large", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_large", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json deleted file mode 100644 index 192b9920a6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_large" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json deleted file mode 100644 index eccfe83cb7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_medium" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json deleted file mode 100644 index 5f66417b21..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json deleted file mode 100644 index 7752e9be45..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_medium", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_medium", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json deleted file mode 100644 index ee576746b9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/scroll_paper" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json deleted file mode 100644 index 8fafbd4a86..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json deleted file mode 100644 index 0042b78487..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_large" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json deleted file mode 100644 index a219c7855d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_medium" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json deleted file mode 100644 index 6405ebefb2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json deleted file mode 100644 index 583fd0f3c8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_small", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_small", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate.json deleted file mode 100644 index 146695e299..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/slate_blank", - "predicate": { - "hexcasting:written": 0.0 - } - }, - { - "model": "hexcasting:item/slate_written", - "predicate": { - "hexcasting:written": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json deleted file mode 100644 index 727a50c807..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_bricks_0" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json deleted file mode 100644 index accf94f2b3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_bricks_small_0" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json deleted file mode 100644 index 749887313c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json deleted file mode 100644 index e20b742c26..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json deleted file mode 100644 index df037ffa4b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/slate_blank" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json deleted file mode 100644 index c40e37f12b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_block" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json deleted file mode 100644 index adc880399e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json deleted file mode 100644 index 4d0555b2c6..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json deleted file mode 100644 index 8d6a18fa25..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json deleted file mode 100644 index c2bf7616b8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json deleted file mode 100644 index a17de30bf5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/slate_written" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json deleted file mode 100644 index 5acb33c2cd..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/spellbook", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_0_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_0_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_1", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_1_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_1_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_2", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_2_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_2_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_3", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_3_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_3_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_4", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_4_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_4_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_5", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_5_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_5_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_6", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_6_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_6_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_7", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/spellbook_7_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/spellbook_7_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json deleted file mode 100644 index 1727f3854d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_filled", - "layer1": "hexcasting:item/cad/0_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json deleted file mode 100644 index e580e3ceb5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_sealed", - "layer1": "hexcasting:item/cad/0_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json deleted file mode 100644 index 6b832d7806..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json deleted file mode 100644 index 3ded667934..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_filled", - "layer1": "hexcasting:item/cad/1_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json deleted file mode 100644 index 91c0ed2bc4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_sealed", - "layer1": "hexcasting:item/cad/1_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json deleted file mode 100644 index 2d1355b5e9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json deleted file mode 100644 index 9af15dfbbb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_filled", - "layer1": "hexcasting:item/cad/2_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json deleted file mode 100644 index bd336d2d1a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_sealed", - "layer1": "hexcasting:item/cad/2_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json deleted file mode 100644 index e18eaf0d3c..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json deleted file mode 100644 index 6b611c62b0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_filled", - "layer1": "hexcasting:item/cad/3_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json deleted file mode 100644 index 25a265b6d3..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_sealed", - "layer1": "hexcasting:item/cad/3_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json deleted file mode 100644 index 38cd5d8fc0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json deleted file mode 100644 index ebccd06cef..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_filled", - "layer1": "hexcasting:item/cad/4_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json deleted file mode 100644 index d281078d45..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_sealed", - "layer1": "hexcasting:item/cad/4_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json deleted file mode 100644 index 2f82f7d8a2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json deleted file mode 100644 index 99cc74e732..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_filled", - "layer1": "hexcasting:item/cad/5_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json deleted file mode 100644 index 0a4a822a5b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_sealed", - "layer1": "hexcasting:item/cad/5_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json deleted file mode 100644 index 608c5cdd24..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json deleted file mode 100644 index b47cfbac66..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_filled", - "layer1": "hexcasting:item/cad/6_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json deleted file mode 100644 index 2fa15268d2..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_sealed", - "layer1": "hexcasting:item/cad/6_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json deleted file mode 100644 index 1e7e436978..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json deleted file mode 100644 index 8438b02ac0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_filled", - "layer1": "hexcasting:item/cad/7_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json deleted file mode 100644 index d91512283f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_sealed", - "layer1": "hexcasting:item/cad/7_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json deleted file mode 100644 index ea1bd514d1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/acacia" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json deleted file mode 100644 index cb00188989..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/bamboo" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json deleted file mode 100644 index c56b377279..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/birch" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json deleted file mode 100644 index 1fb6398518..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/cherry" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json deleted file mode 100644 index fa68214ae5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/crimson" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json deleted file mode 100644 index ef89b141c8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/dark_oak" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json deleted file mode 100644 index 2ecbbaa4b8..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/edified" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json deleted file mode 100644 index 81fc631e34..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/jungle" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json deleted file mode 100644 index 1d055a8943..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/mangrove" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json deleted file mode 100644 index a2a679a5b5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/mindsplice" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json deleted file mode 100644 index c9a35a19c7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/oak" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json deleted file mode 100644 index 16e5858599..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/staff/quenched_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json deleted file mode 100644 index d34dbbfe48..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_0" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json deleted file mode 100644 index b3b4d49426..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_1" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json deleted file mode 100644 index 9d34fae3ed..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_2" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json deleted file mode 100644 index 61a55746b1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_3" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json deleted file mode 100644 index aa60185a6a..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/spruce" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json deleted file mode 100644 index 4a157768aa..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/warped" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json deleted file mode 100644 index 69e448436d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/stripped_edified_log" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json deleted file mode 100644 index 45e5b99e81..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/stripped_edified_wood" -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json b/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json deleted file mode 100644 index c5dd346a84..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/sub_sandwich" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json deleted file mode 100644 index 4a9917224b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/thought_knot", - "predicate": { - "hexcasting:written": 0.0 - } - }, - { - "model": "hexcasting:item/thought_knot_written", - "predicate": { - "hexcasting:written": 1.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/thought_knot" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json deleted file mode 100644 index f5b12c99d9..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/thought_knot", - "layer1": "hexcasting:item/thought_knot_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json deleted file mode 100644 index 19102d169b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/trinket", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/trinket_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/trinket_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/trinket_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/trinket_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/trinket_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/trinket_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/trinket_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/trinket_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/trinket_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/trinket_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/trinket_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/trinket_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/trinket_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/trinket_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/trinket_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json deleted file mode 100644 index 77da0e72e5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_trinket", - "layer1": "hexcasting:item/cad/0_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json deleted file mode 100644 index 4eb168d7f1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json deleted file mode 100644 index 80a274ce90..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_trinket", - "layer1": "hexcasting:item/cad/1_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json deleted file mode 100644 index f38c5e5dc4..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json deleted file mode 100644 index 6c60bb9486..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_trinket", - "layer1": "hexcasting:item/cad/2_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json deleted file mode 100644 index 4410e1a4ff..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json deleted file mode 100644 index 4aea4da78e..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_trinket", - "layer1": "hexcasting:item/cad/3_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json deleted file mode 100644 index 87903d7d9b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json deleted file mode 100644 index 9b61c263fb..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_trinket", - "layer1": "hexcasting:item/cad/4_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json deleted file mode 100644 index 7e5d29274b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json deleted file mode 100644 index 0b07194441..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/cad/5_trinket", - "layer1": "hexcasting:item/cad/5_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json deleted file mode 100644 index 6cc75f387d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json deleted file mode 100644 index bdd007f345..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_trinket", - "layer1": "hexcasting:item/cad/6_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json deleted file mode 100644 index a2f57e04cc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json deleted file mode 100644 index e83c8fa4bc..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_trinket", - "layer1": "hexcasting:item/cad/7_trinket_overlay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json deleted file mode 100644 index 0b76dd8f8f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/uuid" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json b/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json deleted file mode 100644 index 6a28f12462..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/acacia_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json b/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json deleted file mode 100644 index c0f063051f..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/bamboo_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json b/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json deleted file mode 100644 index 571e454dd7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/birch_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json b/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json deleted file mode 100644 index 9a663a248b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json b/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json deleted file mode 100644 index 059589861d..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/crimson_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json b/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json deleted file mode 100644 index 31dc19c0e5..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/dark_oak_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json b/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json deleted file mode 100644 index 903e47409b..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/edified_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json b/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json deleted file mode 100644 index 06b8e032d0..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/jungle_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json b/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json deleted file mode 100644 index 0d75f169c1..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/mangrove_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json b/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json deleted file mode 100644 index 5c469011ad..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/mindsplice_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json b/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json deleted file mode 100644 index 8903a42caf..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/oak_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json b/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json deleted file mode 100644 index 3f3562c473..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/spruce_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json b/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json deleted file mode 100644 index 62ab1990d7..0000000000 --- a/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/warped_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/create/tags/block/brittle.json b/Common/src/generated/resources/data/create/tags/block/brittle.json deleted file mode 100644 index fb66be6093..0000000000 --- a/Common/src/generated/resources/data/create/tags/block/brittle.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - { - "id": "#hexcasting:slate", - "required": false - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json b/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json deleted file mode 100644 index d936f71efc..0000000000 --- a/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/forge/tags/item/gems.json b/Common/src/generated/resources/data/forge/tags/item/gems.json deleted file mode 100644 index 6c55bdef92..0000000000 --- a/Common/src/generated/resources/data/forge/tags/item/gems.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:charged_amethyst" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json deleted file mode 100644 index 158691c260..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "waste_amt": { - "conditions": { - "health_used": { - "min": 89000 - }, - "media_generated": {} - }, - "trigger": "hexcasting:spend_media" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:wasteful_cast.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:glistering_melon_slice" - }, - "title": { - "translate": "advancement.hexcasting:wasteful_cast" - } - }, - "requirements": [ - [ - "waste_amt" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json deleted file mode 100644 index 4664381e91..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "cast_amt": { - "conditions": { - "health_used": {}, - "media_generated": { - "min": 6400000 - } - }, - "trigger": "hexcasting:spend_media" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:big_cast.desc" - }, - "icon": { - "count": 1, - "id": "hexcasting:charged_amethyst" - }, - "title": { - "translate": "advancement.hexcasting:big_cast" - } - }, - "requirements": [ - [ - "cast_amt" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json b/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json deleted file mode 100644 index 66694b8389..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "has_creative_unlocker": { - "conditions": { - "items": [ - { - "items": "hexcasting:creative_unlocker" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "background": "minecraft:textures/block/calcite.png", - "description": { - "translate": "advancement.hexcasting:creative_unlocker.desc" - }, - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:creative_unlocker" - }, - "title": { - "translate": "advancement.hexcasting:creative_unlocker" - } - }, - "requirements": [ - [ - "has_creative_unlocker" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json b/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json deleted file mode 100644 index 6beb493204..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parent": "hexcasting:opened_eyes", - "criteria": { - "health_used": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:enlightenment.desc" - }, - "frame": "challenge", - "hidden": true, - "icon": { - "count": 1, - "id": "minecraft:music_disc_11" - }, - "title": { - "translate": "advancement.hexcasting:enlightenment" - } - }, - "requirements": [ - [ - "health_used" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore.json b/Common/src/generated/resources/data/hexcasting/advancement/lore.json deleted file mode 100644 index 42c9fd8c5f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "criteria": { - "used_item": { - "conditions": { - "item": { - "items": "hexcasting:lore_fragment" - } - }, - "trigger": "minecraft:consume_item" - } - }, - "display": { - "background": "hexcasting:textures/block/slate_block.png", - "description": { - "translate": "advancement.hexcasting:lore.desc" - }, - "frame": "goal", - "icon": { - "count": 1, - "id": "hexcasting:akashic_ligature" - }, - "title": { - "translate": "advancement.hexcasting:lore" - } - }, - "requirements": [ - [ - "used_item" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json deleted file mode 100644 index 314c3fa628..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom1" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json deleted file mode 100644 index 6f3e2b9d20..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom2" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json deleted file mode 100644 index 2147c12792..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom3" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json deleted file mode 100644 index 1374bfcca4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom4" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json deleted file mode 100644 index 06c329a939..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom5" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json deleted file mode 100644 index 9d2183c268..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/experiment1" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json deleted file mode 100644 index 4ac3cadb4f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/experiment2" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json deleted file mode 100644 index abef5eb653..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/inventory" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json b/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json deleted file mode 100644 index 89583b9134..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "hexcasting:y_u_no_cast_angy", - "criteria": { - "health_used": { - "conditions": { - "health_used": {}, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "min": 0.0 - } - }, - "trigger": "hexcasting:overcast" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:opened_eyes.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:ender_eye" - }, - "title": { - "translate": "advancement.hexcasting:opened_eyes" - } - }, - "requirements": [ - [ - "health_used" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json deleted file mode 100644 index d36fd4dc3b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_record" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_record" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json deleted file mode 100644 index 18f9ea380f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:budding_amethyst" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:budding_amethyst" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json deleted file mode 100644 index cc4c924b54..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_boolean" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_boolean" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json deleted file mode 100644 index 8a43f8bac3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_redstone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_redstone" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json deleted file mode 100644 index 939dcb6e4e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_look" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_look" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json deleted file mode 100644 index c4fc49fd24..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_rightclick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_rightclick" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 31d9085f82..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_storedplayer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_storedplayer" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json deleted file mode 100644 index 6dfe849d9f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quench_allay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quench_allay" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json deleted file mode 100644 index e044c18391..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json deleted file mode 100644 index 521d28ac91..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks_from_amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks_from_amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json deleted file mode 100644 index 687815c8ed..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks_small_from_amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks_small_from_amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json deleted file mode 100644 index 96746726ec..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_packing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_packing" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json deleted file mode 100644 index ff10efd290..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_unpacking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_unpacking" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json deleted file mode 100644 index 9a8101e969..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json deleted file mode 100644 index d3a39ef2b3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json deleted file mode 100644 index ab1194da4a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json deleted file mode 100644 index 31556a4ca8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json deleted file mode 100644 index 1d09e6fdf8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence_gate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence_gate" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json deleted file mode 100644 index ab66016e10..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_panel" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json deleted file mode 100644 index f031431d00..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_logs" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_planks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_planks" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json deleted file mode 100644 index 317bd1fd11..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_slab" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json deleted file mode 100644 index 069989ca28..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_stairs" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json deleted file mode 100644 index 5179827061..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_tile" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_tile" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json deleted file mode 100644 index f0aaf4b1fd..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_wood" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json deleted file mode 100644 index b0e5ce990b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json deleted file mode 100644 index 0bab79c647..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json deleted file mode 100644 index 513c193a63..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json deleted file mode 100644 index 0dd1f089e7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json deleted file mode 100644 index d676daa7f7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json deleted file mode 100644 index ffd1ea1840..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 241b8a9c92..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json deleted file mode 100644 index 860df61f62..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json deleted file mode 100644 index 9549138cc4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json deleted file mode 100644 index 770d62ab2b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json deleted file mode 100644 index b2f96c2797..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block_from_slates" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block_from_slates" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json deleted file mode 100644 index a600188b5d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json deleted file mode 100644 index a631cf0095..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks_from_slate_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks_from_slate_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json deleted file mode 100644 index b525018821..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks_small_from_slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks_small_from_slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json deleted file mode 100644 index f38da3557b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json deleted file mode 100644 index 0df2c49263..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json deleted file mode 100644 index 164b02fdea..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json deleted file mode 100644 index 02b28d05ac..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json deleted file mode 100644 index 88d4914aa4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json deleted file mode 100644 index 561f7240d9..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json deleted file mode 100644 index b90d2aab65..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json deleted file mode 100644 index 56f48d4c58..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json deleted file mode 100644 index 75aff08481..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json deleted file mode 100644 index 57d1f132b6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json deleted file mode 100644 index fa9f1894b9..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json deleted file mode 100644 index c7bd943b17..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json deleted file mode 100644 index 98390070fc..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json deleted file mode 100644 index 4d048fc250..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:stripped_edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stripped_edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stripped_edified_wood" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json deleted file mode 100644 index 6ae4bdbbb6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper_lantern" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ageing_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ageing_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json deleted file mode 100644 index 91debb7ca5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_sconce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_sconce" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json deleted file mode 100644 index f36c1abfc2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:ancient_scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json deleted file mode 100644 index 1bff0c5ff6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json deleted file mode 100644 index 2dc4651527..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_medium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_medium" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json deleted file mode 100644 index 63884d313e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json deleted file mode 100644 index 2e68c56849..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_small" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json deleted file mode 100644 index 551899a3a3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json deleted file mode 100644 index bb64c267e5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:sub_sandwich" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:sub_sandwich" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json deleted file mode 100644 index e29d71dae5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_colorizer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json deleted file mode 100644 index b032476ae7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/charged" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/charged" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json deleted file mode 100644 index 299d8a4550..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/dust" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/dust" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json deleted file mode 100644 index d9f9dfbb25..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/shard" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json deleted file mode 100644 index e04ea0f7b0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:default_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:default_colorizer" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json deleted file mode 100644 index 486da412cd..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_black" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json deleted file mode 100644 index c23b00add5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_blue" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json deleted file mode 100644 index daf49d8674..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_brown" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json deleted file mode 100644 index bc159a4f91..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_cyan" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json deleted file mode 100644 index 959c3b871a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_gray" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json deleted file mode 100644 index ae496bdb93..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_green" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json deleted file mode 100644 index 9e660ad5de..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_blue" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json deleted file mode 100644 index b2b51d665b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_gray" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json deleted file mode 100644 index b21321754b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_lime" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json deleted file mode 100644 index 38097fe636..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_magenta" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json deleted file mode 100644 index a5e2054cd0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_orange" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json deleted file mode 100644 index 868366c0a4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_pink" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json deleted file mode 100644 index b9d4282404..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_purple" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json deleted file mode 100644 index 515062d384..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_red" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json deleted file mode 100644 index 3fbaf1ba20..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_white" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json deleted file mode 100644 index e707bc9937..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_yellow" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json deleted file mode 100644 index e07c954cd3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_agender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_agender" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json deleted file mode 100644 index 8413c66774..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aroace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aroace" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json deleted file mode 100644 index 37604e5939..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aromantic" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aromantic" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json deleted file mode 100644 index 74df9afba7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_asexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_asexual" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json deleted file mode 100644 index a3e18ad420..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_bisexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_bisexual" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json deleted file mode 100644 index e131fc73f1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demiboy" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demiboy" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json deleted file mode 100644 index a164b59ce6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demigirl" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demigirl" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json deleted file mode 100644 index 59c4f8fdeb..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_gay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_gay" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json deleted file mode 100644 index 5c3233fa98..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderfluid" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderfluid" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json deleted file mode 100644 index fd6f1355ef..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderqueer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderqueer" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json deleted file mode 100644 index 091329fe3f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_intersex" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_intersex" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json deleted file mode 100644 index 3d4dec1d10..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_lesbian" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_lesbian" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json deleted file mode 100644 index 83c4964af9..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_nonbinary" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_nonbinary" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json deleted file mode 100644 index 89512b05e1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_plural" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_plural" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json deleted file mode 100644 index 70dced6396..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_transgender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_transgender" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json deleted file mode 100644 index fbcdbfebf4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:uuid_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:uuid_colorizer" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json deleted file mode 100644 index 44a4110650..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_bookshelf" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_bookshelf" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json deleted file mode 100644 index b2a6f52851..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_ligature" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_ligature" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json deleted file mode 100644 index e00a4fdf00..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix/empty" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json deleted file mode 100644 index b6cd73817c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_button" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_button" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json deleted file mode 100644 index 72dce77364..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_door" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_door" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json deleted file mode 100644 index f207372eeb..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_pressure_plate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_pressure_plate" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json deleted file mode 100644 index be0fadb15b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_trapdoor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_trapdoor" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json deleted file mode 100644 index 0b4aa3256c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus/empty" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json deleted file mode 100644 index b1cb841b3e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:abacus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:abacus" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json deleted file mode 100644 index 221cf418c3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:artifact" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:artifact" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json deleted file mode 100644 index 5489ea0467..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:cypher" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:cypher" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json deleted file mode 100644 index 4e19de9e5e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json deleted file mode 100644 index f67d8502aa..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus_rotated" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus_rotated" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json deleted file mode 100644 index 6a24d2b333..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:jeweler_hammer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:jeweler_hammer" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json deleted file mode 100644 index 3411cb2187..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:lens" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:lens" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json deleted file mode 100644 index ef5a492652..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_chorus": { - "conditions": { - "items": [ - { - "items": "minecraft:chorus_fruit" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_focus": { - "conditions": { - "items": [ - { - "items": "hexcasting:focus" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:spellbook" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_focus", - "has_chorus" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:spellbook" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json deleted file mode 100644 index c1e018b4ec..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/acacia" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/acacia" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json deleted file mode 100644 index 19094ad2fe..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/bamboo" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/bamboo" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json deleted file mode 100644 index ca6c180cfa..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/birch" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/birch" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json deleted file mode 100644 index 38107a9b52..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/cherry" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/cherry" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json deleted file mode 100644 index da68b592c5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/crimson" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/crimson" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json deleted file mode 100644 index da9937e87d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/dark_oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/dark_oak" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json deleted file mode 100644 index 99d19ed3bf..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/edified" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/edified" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json deleted file mode 100644 index 80fe7c43f6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/jungle" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/jungle" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json deleted file mode 100644 index 0064814593..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mangrove" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mangrove" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json deleted file mode 100644 index adb60836c1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mindsplice" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mindsplice" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json deleted file mode 100644 index d11084b78d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/oak" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json deleted file mode 100644 index 1ce63b78e3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/quenched" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/quenched" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json deleted file mode 100644 index cbad54cf88..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/spruce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/spruce" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json deleted file mode 100644 index ffff5199c6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/warped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/warped" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json deleted file mode 100644 index f50c1673fa..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:thought_knot" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:thought_knot" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json deleted file mode 100644 index 17c0d69b1f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:trinket" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:trinket" - ] - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/root.json b/Common/src/generated/resources/data/hexcasting/advancement/root.json deleted file mode 100644 index 1b2763aed8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/root.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "criteria": { - "has_charged_amethyst": { - "conditions": { - "items": [ - { - "items": "#hexcasting:grants_root_advancement" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "background": "minecraft:textures/block/calcite.png", - "description": { - "translate": "advancement.hexcasting:root.desc" - }, - "hidden": true, - "icon": { - "count": 1, - "id": "minecraft:budding_amethyst" - }, - "title": { - "translate": "advancement.hexcasting:root" - } - }, - "requirements": [ - [ - "has_charged_amethyst" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json b/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json deleted file mode 100644 index 00a5641e4d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "did_the_thing": { - "trigger": "hexcasting:fail_to_cast_great_spell" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:blaze_powder" - }, - "title": { - "translate": "advancement.hexcasting:y_u_no_cast_angy" - } - }, - "requirements": [ - [ - "did_the_thing" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json b/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json deleted file mode 100644 index 012582c4b2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "exhaustion": 0.0, - "message_id": "hexcasting.overcast", - "scaling": "when_caused_by_living_non_player" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json deleted file mode 100644 index 70af09ea61..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:amethyst_cluster", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:blocks/amethyst_cluster" - } - ], - "shardDelta": -0.5 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index 2cde006e3e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json deleted file mode 100644 index 79ede35c14..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/ancient_city" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json deleted file mode 100644 index f51d2dabf0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/desert_pyramid" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json deleted file mode 100644 index 78250990ed..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/jungle_temple" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json deleted file mode 100644 index b9e7041dbc..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/nether_bridge" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json deleted file mode 100644 index 5cb215e05e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json deleted file mode 100644 index 6dfe6d03d3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_corridor" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index c636a2f73a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json deleted file mode 100644 index 215f625f7d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/pillager_outpost" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json deleted file mode 100644 index ad1b0666d8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json deleted file mode 100644 index f55d8f4cc0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_library" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json deleted file mode 100644 index 3aaf4b8498..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_desert_house" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json deleted file mode 100644 index 93d27d6661..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_plains_house" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json deleted file mode 100644 index bb224944b7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_savanna_house" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json deleted file mode 100644 index ec4f567a6e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_snowy_house" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json deleted file mode 100644 index d2132c79bf..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_taiga_house" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json deleted file mode 100644 index be9d6b6d12..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/woodland_mansion" - } - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index 27d1e1ba46..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json deleted file mode 100644 index d4d94d6652..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/ancient_city" - } - ], - "countRange": 4 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json deleted file mode 100644 index 17372d9896..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/bastion_other" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json deleted file mode 100644 index ff8851c233..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/bastion_treasure" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json deleted file mode 100644 index b91f49fb8a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/desert_pyramid" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json deleted file mode 100644 index f5371dd519..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/end_city_treasure" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json deleted file mode 100644 index c1bf948ade..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/jungle_temple" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json deleted file mode 100644 index 68725eddce..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/nether_bridge" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json deleted file mode 100644 index b06f4d95a6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/pillager_outpost" - } - ], - "countRange": 4 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json deleted file mode 100644 index 3c7b528cda..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/shipwreck_map" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json deleted file mode 100644 index 141eebbe09..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json deleted file mode 100644 index f08c93cb45..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_library" - } - ], - "countRange": 5 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json deleted file mode 100644 index a59db105dd..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_cartographer" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json deleted file mode 100644 index cc97ecc7c2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/woodland_mansion" - } - ], - "countRange": 5 -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json deleted file mode 100644 index 78a36f62ec..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_bookshelf" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_bookshelf" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json deleted file mode 100644 index 02be275bc1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_ligature" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_ligature" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json deleted file mode 100644 index 5c93f81681..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_record" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_record" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json deleted file mode 100644 index 4c60a77364..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json deleted file mode 100644 index 3d39f82987..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json deleted file mode 100644 index 7c054a0aab..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_dust_block" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json deleted file mode 100644 index 911c281497..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json deleted file mode 100644 index 2eeb112461..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json deleted file mode 100644 index e2c38fe09e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_sconce" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_sconce" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json deleted file mode 100644 index 13010296ca..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json deleted file mode 100644 index 2bb2887920..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json deleted file mode 100644 index f2ea006a03..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json deleted file mode 100644 index d2bfc7c956..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:aventurine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json deleted file mode 100644 index 88f319d753..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:citrine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json deleted file mode 100644 index 7510be752b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/boolean" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/boolean" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json deleted file mode 100644 index 056282de33..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/empty" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json deleted file mode 100644 index b130eb19de..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/redstone" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json deleted file mode 100644 index a24172124e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_button" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_button" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json deleted file mode 100644 index 942a65484f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "block": "hexcasting:edified_door", - "condition": "minecraft:block_state_property", - "properties": { - "half": "lower" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_door" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_door" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json deleted file mode 100644 index f45eea22be..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json deleted file mode 100644 index 01cbf2a5e1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence_gate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence_gate" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json deleted file mode 100644 index 396a3fcb45..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json deleted file mode 100644 index d6c0759bfa..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_amethyst" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_amethyst" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json deleted file mode 100644 index 31892f2177..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_aventurine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_aventurine" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json deleted file mode 100644 index 21ac1cd0fb..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_citrine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_citrine" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json deleted file mode 100644 index f9c2c33343..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_purple" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_purple" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json deleted file mode 100644 index 83cb1f1b59..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_panel" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_panel" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json deleted file mode 100644 index 5f1b5f7280..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_planks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_planks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json deleted file mode 100644 index d733b30a49..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_pressure_plate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_pressure_plate" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json deleted file mode 100644 index 0bdc00f6b3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_slab" - } - ], - "functions": [ - { - "add": false, - "conditions": [ - { - "block": "hexcasting:edified_slab", - "condition": "minecraft:block_state_property", - "properties": { - "type": "double" - } - } - ], - "count": 2.0, - "function": "minecraft:set_count" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_slab" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json deleted file mode 100644 index 7cb6566434..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_stairs" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_stairs" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json deleted file mode 100644 index dbc6bd1426..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_tile" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_tile" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json deleted file mode 100644 index f76ea0437f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_trapdoor" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_trapdoor" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json deleted file mode 100644 index 2e1faee977..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_wood" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json deleted file mode 100644 index 67fe1185ac..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/empty" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json deleted file mode 100644 index 87f6f0ef09..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/look" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/look" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json deleted file mode 100644 index 1635ee4207..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/redstone" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json deleted file mode 100644 index 37f1e9df10..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/rightclick" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/rightclick" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json deleted file mode 100644 index 09fe8b6fd3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "hexcasting:quenched_allay" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "add": true, - "conditions": [ - { - "chances": [ - 0.25, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "name": "hexcasting:quenched_allay_shard" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json deleted file mode 100644 index eb1a87b224..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json deleted file mode 100644 index 879089b6d4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json deleted file mode 100644 index 0c81157382..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json deleted file mode 100644 index 8c3d628108..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json deleted file mode 100644 index ccea471c66..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json deleted file mode 100644 index eeb8f5c955..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:copy_components", - "include": [ - "hexcasting:pattern" - ], - "source": "block_entity" - } - ], - "name": "hexcasting:slate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json deleted file mode 100644 index f6d9ea8d1a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 6f7cfb5825..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json deleted file mode 100644 index 96dd26f7fb..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json deleted file mode 100644 index e91ebad3ce..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json deleted file mode 100644 index d136fe7460..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_block" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json deleted file mode 100644 index d42593f8d5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json deleted file mode 100644 index f77a608dec..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json deleted file mode 100644 index 060b60ebf9..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json deleted file mode 100644 index 81cda1a13a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json deleted file mode 100644 index 7dab40f3a1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_log" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json deleted file mode 100644 index 60b009f032..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_wood" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json deleted file mode 100644 index e87bc89af2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json +++ /dev/null @@ -1,211 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 1.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 0.0 - }, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - }, - { - "chances": [ - 0.25, - 0.35, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - }, - { - "chance": 0.125, - "condition": "minecraft:random_chance" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:inject/amethyst_cluster" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/abacus.json b/Common/src/generated/resources/data/hexcasting/recipe/abacus.json deleted file mode 100644 index 76d393b033..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/abacus.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "minecraft:planks" - } - }, - "pattern": [ - "WAW", - "SAS", - "WAW" - ], - "result": { - "count": 1, - "id": "hexcasting:abacus" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json deleted file mode 100644 index 54de4e69be..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "c:dyes/brown" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json deleted file mode 100644 index 055ac48308..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "C": { - "item": "minecraft:book" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "CCC", - "LPL" - ], - "result": { - "count": 1, - "id": "hexcasting:akashic_bookshelf" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json deleted file mode 100644 index bbcc3f83e7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "1": { - "item": "hexcasting:amethyst_dust" - }, - "2": { - "item": "minecraft:amethyst_shard" - }, - "3": { - "item": "hexcasting:charged_amethyst" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "123", - "LPL" - ], - "result": { - "count": 4, - "id": "hexcasting:akashic_ligature" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json deleted file mode 100644 index 84cd942bb3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:amethyst_block" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json deleted file mode 100644 index 71f55ac6dd..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_bricks_small" - } - ], - "result": { - "item": "hexcasting:amethyst_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json deleted file mode 100644 index d41d6cbbf7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_bricks" - } - ], - "result": { - "item": "hexcasting:amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json deleted file mode 100644 index 1da337229f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "X": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "XX", - "XX" - ], - "result": { - "count": 1, - "id": "hexcasting:amethyst_dust_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json deleted file mode 100644 index db42cb3711..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust_block" - } - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json deleted file mode 100644 index bc5387bff3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:amethyst_block" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 2, - "item": "hexcasting:amethyst_pillar" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json deleted file mode 100644 index 1ece2856f0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "tag": "c:ingots/copper" - }, - "T": { - "item": "hexcasting:charged_amethyst" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_sconce" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json deleted file mode 100644 index 674715a62d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:amethyst_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json deleted file mode 100644 index 41d540f77e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:copper_ingot" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "item": "hexcasting:ancient_colorizer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json deleted file mode 100644 index 33db9b82c9..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "c:dyes/brown" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json deleted file mode 100644 index d99d9ba91b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:ancient_scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/artifact.json b/Common/src/generated/resources/data/hexcasting/recipe/artifact.json deleted file mode 100644 index a03e30a2a8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/artifact.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "D": { - "tag": "minecraft:creeper_drop_music_discs" - }, - "F": { - "tag": "c:ingots/gold" - } - }, - "pattern": [ - " F ", - "FAF", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:artifact" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json deleted file mode 100644 index 750ad2dcfe..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:akashic_ligature" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 5, - "profession": "minecraft:librarian" - }, - "result": { - "Name": "hexcasting:akashic_record" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json deleted file mode 100644 index 0532b2e5ed..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 3 - }, - "result": { - "Name": "minecraft:budding_amethyst" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json deleted file mode 100644 index 5e97ada05f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:shepherd" - }, - "result": { - "Name": "hexcasting:directrix/boolean", - "Properties": { - "energized": "false", - "facing": "north", - "state": "neither" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json deleted file mode 100644 index afb314d043..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:mason" - }, - "result": { - "Name": "hexcasting:directrix/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "false" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json deleted file mode 100644 index 7d77364f78..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:fletcher" - }, - "result": { - "Name": "hexcasting:impetus/look", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json deleted file mode 100644 index 02fbae2538..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:toolsmith" - }, - "result": { - "Name": "hexcasting:impetus/rightclick", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json deleted file mode 100644 index f79dca1d11..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:cleric" - }, - "result": { - "Name": "hexcasting:impetus/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "true" - } - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json deleted file mode 100644 index 076b4e0745..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 100000, - "entityIn": { - "type": "hexcasting:entity_type", - "entityType": "minecraft:allay" - }, - "result": { - "Name": "hexcasting:quenched_allay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/cypher.json b/Common/src/generated/resources/data/hexcasting/recipe/cypher.json deleted file mode 100644 index 80e1837536..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/cypher.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "tag": "c:ingots/copper" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:cypher" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json deleted file mode 100644 index 4d9e9902e8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:charged_amethyst" - } - ], - "result": { - "count": 4, - "id": "hexcasting:charged_amethyst" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json deleted file mode 100644 index 5023760773..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:amethyst_dust" - } - ], - "result": { - "count": 31, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json deleted file mode 100644 index e441d9bf5f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "minecraft:amethyst_shard" - } - ], - "result": { - "count": 7, - "id": "minecraft:amethyst_shard" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json deleted file mode 100644 index 3f95041537..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:default_colorizer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json deleted file mode 100644 index 986fa97d99..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "C": { - "item": "minecraft:comparator" - }, - "O": { - "item": "minecraft:observer" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "CSS", - "OAO", - "SSC" - ], - "result": { - "count": 1, - "id": "hexcasting:directrix/empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json deleted file mode 100644 index 43dcd86862..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:black_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_black" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json deleted file mode 100644 index b9cd3b99c3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_blue" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json deleted file mode 100644 index f02b87049c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:brown_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_brown" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json deleted file mode 100644 index 93380132c6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:cyan_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_cyan" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json deleted file mode 100644 index c803427d5a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_gray" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json deleted file mode 100644 index e592b36cca..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:green_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_green" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json deleted file mode 100644 index d8eb9b5986..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_blue" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json deleted file mode 100644 index e6efc2af9a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_gray" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json deleted file mode 100644 index 645db81176..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:lime_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_lime" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json deleted file mode 100644 index 9476c0a098..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:magenta_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_magenta" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json deleted file mode 100644 index f6f815b95f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:orange_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_orange" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json deleted file mode 100644 index 065db19c23..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:pink_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_pink" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json deleted file mode 100644 index 85dab6119e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:purple_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_purple" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json deleted file mode 100644 index 8acba0fc1a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:red_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_red" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json deleted file mode 100644 index d76ee9ba69..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:white_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_white" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json deleted file mode 100644 index 35ffbdd8df..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:yellow_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_yellow" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json deleted file mode 100644 index 28edc09f6d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_focus", - "category": "misc" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json deleted file mode 100644 index 5bf703566d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_spellbook", - "category": "misc" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json deleted file mode 100644 index 10ad25b4aa..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "redstone", - "ingredients": [ - { - "tag": "hexcasting:edified_planks" - } - ], - "result": { - "count": 1, - "id": "hexcasting:edified_button" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json deleted file mode 100644 index 6ff2941615..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW", - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_door" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json deleted file mode 100644 index f1a7c7ec45..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WSW", - "WSW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_fence" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json deleted file mode 100644 index a38d45ca38..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "SWS", - "SWS" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_fence_gate" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json deleted file mode 100644 index 0baf420f31..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "tag": "hexcasting:edified_planks" - }, - "D": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "DCD", - "C C", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:edified_panel" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json deleted file mode 100644 index 7ea641db71..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "hexcasting:edified_logs" - } - ], - "result": { - "count": 4, - "id": "hexcasting:edified_planks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json deleted file mode 100644 index fb80df82d1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_pressure_plate" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json deleted file mode 100644 index efda8df52a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_slab" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json deleted file mode 100644 index ca2e03f9c3..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "W ", - "WW ", - "WWW" - ], - "result": { - "count": 4, - "id": "hexcasting:edified_stairs" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json deleted file mode 100644 index bfca8c3437..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW ", - "W W", - " WW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_tile" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json deleted file mode 100644 index 89928fcc73..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW", - "WWW" - ], - "result": { - "count": 2, - "id": "hexcasting:edified_trapdoor" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json deleted file mode 100644 index 4e95e0bdc6..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_wood" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/focus.json b/Common/src/generated/resources/data/hexcasting/recipe/focus.json deleted file mode 100644 index ff88244378..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/focus.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": { - "tag": "c:dusts/glowstone" - }, - "L": { - "tag": "c:leathers" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GLG", - "PAP", - "GLG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json deleted file mode 100644 index 62aba7f62e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": { - "tag": "c:dusts/glowstone" - }, - "L": { - "tag": "c:leathers" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GPG", - "LAL", - "GPG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json deleted file mode 100644 index b5d3b9fd5c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:iron_bars" - }, - "P": { - "item": "minecraft:purpur_block" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "PSS", - "BAB", - "SSP" - ], - "result": { - "count": 1, - "id": "hexcasting:impetus/empty" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json deleted file mode 100644 index fef55bcb4b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "I": { - "tag": "c:ingots/iron" - }, - "N": { - "tag": "c:nuggets/iron" - }, - "S": [ - { - "item": "minecraft:stick" - }, - { - "tag": "forge:rods/wooden" - } - ] - }, - "pattern": [ - "IAN", - " S ", - " S " - ], - "result": { - "count": 1, - "id": "hexcasting:jeweler_hammer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/lens.json b/Common/src/generated/resources/data/hexcasting/recipe/lens.json deleted file mode 100644 index d7e33ac36b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/lens.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "item": "minecraft:glass" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:lens" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json deleted file mode 100644 index d5401c0952..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_agender" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json deleted file mode 100644 index 25c32f412c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat_seeds" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aroace" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json deleted file mode 100644 index ab923e9b61..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:arrow" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aromantic" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json deleted file mode 100644 index c41a3223de..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:bread" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_asexual" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json deleted file mode 100644 index 157dff5b64..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_bisexual" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json deleted file mode 100644 index c79d6fd805..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_iron" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demiboy" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json deleted file mode 100644 index 4a87fb83dd..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_copper" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demigirl" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json deleted file mode 100644 index 3922bf5fa1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:stone_brick_wall" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_gay" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json deleted file mode 100644 index 788be0d074..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:water_bucket" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderfluid" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json deleted file mode 100644 index db56478852..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass_bottle" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderqueer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json deleted file mode 100644 index 0cf8605f6e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:azalea" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_intersex" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json deleted file mode 100644 index 60faeb98cb..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:honeycomb" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_lesbian" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json deleted file mode 100644 index 1592908ece..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:moss_block" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_nonbinary" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json deleted file mode 100644 index 662aaf38fc..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:repeater" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_plural" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json deleted file mode 100644 index cce2b91ea8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:egg" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_transgender" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json deleted file mode 100644 index 28f0b32b12..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:quenched_allay" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:quenched_allay_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json deleted file mode 100644 index fe5d0689ea..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_bricks_small" - } - ], - "result": { - "item": "hexcasting:quenched_allay_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json deleted file mode 100644 index 39371d2da1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_bricks" - } - ], - "result": { - "item": "hexcasting:quenched_allay_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json deleted file mode 100644 index 4551fabc34..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:quenched_allay_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:quenched_allay_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll.json deleted file mode 100644 index cf7a4fcfb1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/scroll.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "PPA", - "PPP", - "PPP" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json deleted file mode 100644 index 85b2a98f34..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "PP ", - "PP " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_medium" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json deleted file mode 100644 index 1feb96a530..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:paper" - }, - "D": { - "item": "minecraft:paper" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:scroll_paper" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json deleted file mode 100644 index 5434f4c7f1..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json deleted file mode 100644 index c64a3e544a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "P " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate.json b/Common/src/generated/resources/data/hexcasting/recipe/slate.json deleted file mode 100644 index eb718972c2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "S": { - "item": "minecraft:deepslate" - } - }, - "pattern": [ - " A ", - "SSS" - ], - "result": { - "count": 6, - "id": "hexcasting:slate" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json deleted file mode 100644 index 11cab9aed7..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks" - }, - { - "item": "hexcasting:amethyst_bricks" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json deleted file mode 100644 index a403896319..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks_small" - }, - { - "item": "hexcasting:amethyst_bricks_small" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json deleted file mode 100644 index 1265220319..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_pillar" - }, - { - "item": "hexcasting:amethyst_pillar" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_pillar" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json deleted file mode 100644 index 5cb7e77e23..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_tiles" - }, - { - "item": "hexcasting:amethyst_tiles" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_tiles" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json deleted file mode 100644 index 975fea26a0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:deepslate" - }, - "D": { - "item": "minecraft:deepslate" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json deleted file mode 100644 index 92bf412fdf..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "hexcasting:slate" - } - }, - "pattern": [ - "S", - "S" - ], - "result": { - "count": 1, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json deleted file mode 100644 index e7320fda78..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:slate_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json deleted file mode 100644 index 2afebcd850..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks_small" - } - ], - "result": { - "item": "hexcasting:slate_bricks" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json deleted file mode 100644 index c7160e7d35..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks" - } - ], - "result": { - "item": "hexcasting:slate_bricks_small" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json deleted file mode 100644 index 95df1e497a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 2, - "item": "hexcasting:slate_pillar" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json deleted file mode 100644 index beb80118a8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:slate_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json deleted file mode 100644 index d9e9250926..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:writable_book" - }, - "F": { - "item": "minecraft:chorus_fruit" - }, - "N": { - "tag": "c:nuggets/gold" - } - }, - "pattern": [ - "NBA", - "NFA", - "NBA" - ], - "result": { - "count": 1, - "id": "hexcasting:spellbook" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json deleted file mode 100644 index a5e01a9c9a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:acacia_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/acacia" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json deleted file mode 100644 index 8c648a860c..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:bamboo_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/bamboo" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json deleted file mode 100644 index 2cee68c976..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:birch_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/birch" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json deleted file mode 100644 index fb19b26271..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:cherry_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/cherry" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json deleted file mode 100644 index 6f8b4dd09e..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:crimson_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/crimson" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json deleted file mode 100644 index b4a9aea823..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:dark_oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/dark_oak" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json deleted file mode 100644 index 29378f8085..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:edified_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/edified" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json deleted file mode 100644 index a3b382cf11..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:jungle_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/jungle" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json deleted file mode 100644 index 2ad01c0d69..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:mangrove_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mangrove" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json deleted file mode 100644 index 41c9e8abb0..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:brainswept_circle_components" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mindsplice" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json deleted file mode 100644 index 75d6d9daab..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/oak" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json deleted file mode 100644 index 91fd1fc452..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:quenched_allay_shard" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/quenched" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json deleted file mode 100644 index 0ab7166a60..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:spruce_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/spruce" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json deleted file mode 100644 index 8a71b96aaf..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:warped_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/warped" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json deleted file mode 100644 index e31a365848..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json deleted file mode 100644 index 224e2b2227..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json deleted file mode 100644 index e90486e072..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json deleted file mode 100644 index 51ae3111d5..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": { - "count": 1, - "id": "hexcasting:amethyst_tiles" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json deleted file mode 100644 index b3c53456f8..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json deleted file mode 100644 index d77c21d186..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json deleted file mode 100644 index 6be7b1f7dc..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json deleted file mode 100644 index 45ec158d58..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_bricks" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json deleted file mode 100644 index 0fd812ed48..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_bricks_small" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json deleted file mode 100644 index 7bed33595a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_pillar" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json deleted file mode 100644 index eec5621823..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_tiles" -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json deleted file mode 100644 index 0ccb5ae8e2..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:stripped_edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:stripped_edified_wood" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json deleted file mode 100644 index 82a511fde4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "B": { - "item": "minecraft:bread" - }, - "C": { - "item": "minecraft:cooked_beef" - }, - "S": { - "item": "minecraft:stick" - } - }, - "pattern": [ - " SA", - " C ", - " B " - ], - "result": { - "count": 1, - "id": "hexcasting:sub_sandwich" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json deleted file mode 100644 index d89ad83310..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "equipment", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust" - }, - { - "item": "minecraft:string" - } - ], - "result": { - "count": 1, - "id": "hexcasting:thought_knot" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/trinket.json b/Common/src/generated/resources/data/hexcasting/recipe/trinket.json deleted file mode 100644 index f0c905012a..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/trinket.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "tag": "c:ingots/iron" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:trinket" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json deleted file mode 100644 index 235a2aff68..0000000000 --- a/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 1, - "id": "hexcasting:uuid_colorizer" - } -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json deleted file mode 100644 index 5710e98698..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "values": [ - "minecraft:amethyst_block", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_pillar" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json deleted file mode 100644 index 7fc52a816b..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_block", - "hexcasting:conjured_light" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json deleted file mode 100644 index 2baec8591d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small", - "hexcasting:quenched_allay_tiles" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json deleted file mode 100644 index fcebe17924..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_tiles", - "hexcasting:slate_pillar" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json deleted file mode 100644 index 0f2bcab34f..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "minecraft:kelp", - "minecraft:kelp_plant", - "minecraft:seagrass", - "minecraft:tall_seagrass" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json deleted file mode 100644 index 5710e98698..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "values": [ - "minecraft:amethyst_block", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_pillar" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json deleted file mode 100644 index 1f7070a707..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust", - "minecraft:amethyst_shard", - "hexcasting:charged_amethyst", - "hexcasting:creative_unlocker" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json deleted file mode 100644 index 52ac4c0c96..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:glass_bottle" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json deleted file mode 100644 index 2baec8591d..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small", - "hexcasting:quenched_allay_tiles" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json deleted file mode 100644 index 674a370049..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:honeycomb" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json deleted file mode 100644 index fcebe17924..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_tiles", - "hexcasting:slate_pillar" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/staves.json b/Common/src/generated/resources/data/hexcasting/tags/item/staves.json deleted file mode 100644 index 29f4595c62..0000000000 --- a/Common/src/generated/resources/data/hexcasting/tags/item/staves.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:staff/edified", - "hexcasting:staff/oak", - "hexcasting:staff/spruce", - "hexcasting:staff/birch", - "hexcasting:staff/jungle", - "hexcasting:staff/acacia", - "hexcasting:staff/dark_oak", - "hexcasting:staff/crimson", - "hexcasting:staff/warped", - "hexcasting:staff/mangrove", - "hexcasting:staff/cherry", - "hexcasting:staff/bamboo", - "hexcasting:staff/quenched", - "hexcasting:staff/mindsplice" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json deleted file mode 100644 index 7a23dc1ec1..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_light", - "hexcasting:conjured_block", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_sconce" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/doors.json b/Common/src/generated/resources/data/minecraft/tags/block/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/fences.json b/Common/src/generated/resources/data/minecraft/tags/block/fences.json deleted file mode 100644 index 269de59e0a..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/fences.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/leaves.json b/Common/src/generated/resources/data/minecraft/tags/block/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/logs.json b/Common/src/generated/resources/data/minecraft/tags/block/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json deleted file mode 100644 index 0d6037e186..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "values": [ - "hexcasting:akashic_record", - "hexcasting:akashic_bookshelf", - "hexcasting:akashic_ligature", - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood", - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile", - "hexcasting:edified_door", - "hexcasting:edified_trapdoor", - "hexcasting:edified_slab", - "hexcasting:edified_button", - "hexcasting:edified_stairs", - "hexcasting:edified_fence", - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json deleted file mode 100644 index a8b1c2eb67..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_tiles", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_pillar", - "hexcasting:slate", - "hexcasting:directrix/empty", - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean", - "hexcasting:impetus/empty", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/look", - "hexcasting:impetus/redstone", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_pillar", - "hexcasting:slate_amethyst_tiles", - "hexcasting:slate_amethyst_bricks", - "hexcasting:slate_amethyst_bricks_small", - "hexcasting:slate_amethyst_pillar", - "hexcasting:amethyst_sconce", - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_tiles", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json deleted file mode 100644 index 02d08df2b3..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust_block" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/planks.json b/Common/src/generated/resources/data/minecraft/tags/block/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json deleted file mode 100644 index 117722b2be..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence", - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/doors.json b/Common/src/generated/resources/data/minecraft/tags/item/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/leaves.json b/Common/src/generated/resources/data/minecraft/tags/item/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/logs.json b/Common/src/generated/resources/data/minecraft/tags/item/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/planks.json b/Common/src/generated/resources/data/minecraft/tags/item/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json b/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json deleted file mode 100644 index 35599dfe28..0000000000 --- a/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "entries": [ - "hexcasting:scroll/minecraft/chests/simple_dungeon", - "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", - "hexcasting:scroll/minecraft/chests/bastion_other", - "hexcasting:lore/minecraft/chests/woodland_mansion", - "hexcasting:scroll/hexcasting/random_scroll", - "hexcasting:lore/minecraft/chests/village/village_desert_house", - "hexcasting:scroll/minecraft/chests/end_city_treasure", - "hexcasting:scroll/minecraft/chests/jungle_temple", - "hexcasting:scroll/minecraft/chests/bastion_treasure", - "hexcasting:cypher/hexcasting/random_cypher", - "hexcasting:lore/minecraft/chests/village/village_savanna_house", - "hexcasting:scroll/minecraft/chests/pillager_outpost", - "hexcasting:scroll/minecraft/chests/desert_pyramid", - "hexcasting:scroll/minecraft/chests/village/village_cartographer", - "hexcasting:scroll/minecraft/chests/shipwreck_map", - "hexcasting:scroll/minecraft/chests/bastion_treasure", - "hexcasting:scroll/minecraft/chests/end_city_treasure", - "hexcasting:scroll/minecraft/chests/ancient_city", - "hexcasting:scroll/minecraft/chests/pillager_outpost", - "hexcasting:scroll/minecraft/chests/woodland_mansion", - "hexcasting:scroll/minecraft/chests/stronghold_library", - "hexcasting:lore/minecraft/chests/simple_dungeon", - "hexcasting:lore/minecraft/chests/abandoned_mineshaft", - "hexcasting:lore/minecraft/chests/pillager_outpost", - "hexcasting:lore/minecraft/chests/woodland_mansion", - "hexcasting:lore/minecraft/chests/stronghold_library", - "hexcasting:lore/minecraft/chests/village/village_desert_house", - "hexcasting:lore/minecraft/chests/village/village_plains_house", - "hexcasting:lore/minecraft/chests/village/village_savanna_house", - "hexcasting:lore/minecraft/chests/village/village_snowy_house", - "hexcasting:lore/minecraft/chests/village/village_taiga_house", - "hexcasting:cypher/minecraft/chests/simple_dungeon", - "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", - "hexcasting:cypher/minecraft/chests/stronghold_corridor", - "hexcasting:cypher/minecraft/chests/jungle_temple", - "hexcasting:cypher/minecraft/chests/desert_pyramid", - "hexcasting:cypher/minecraft/chests/ancient_city", - "hexcasting:cypher/minecraft/chests/nether_bridge", - "hexcasting:amethyst_cluster" - ], - "replace": false -} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java index c617c2a81b..824161c7f5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java @@ -1,7 +1,10 @@ package at.petrak.hexcasting.api.casting.iota; import at.petrak.hexcasting.api.casting.SpellList; +import at.petrak.hexcasting.api.mod.HexConfig; +import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; +import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; @@ -104,14 +107,35 @@ public Component display() { out.append(sub.display()); - // only add a comma between 2 non-patterns (commas don't look good with Inline patterns) - // TODO: maybe add a config? maybe add a method on IotaType to allow it to opt out of commas - if (i < list.size() - 1 && (IotaType.getTypeFromTag(csub) != PatternIota.TYPE - || IotaType.getTypeFromTag(HexUtils.downcast(list.get(i+1), CompoundTag.TYPE)) != PatternIota.TYPE)) { + // only add a comma between 2 non-patterns (commas don't look good with Inline patterns) + // TODO: maybe add a method on IotaType to allow it to opt out of commas? + if (i < list.size() - 1) { + var thisIotaNeedsComma = sub.type != PatternIota.TYPE; + var nextIotaNeedsComma = list.getAt(i + 1).type != PatternIota.TYPE; + var alwaysShowCommas = HexConfig.client() != null && HexConfig.client().alwaysShowListCommas(); + if (thisIotaNeedsComma || nextIotaNeedsComma || alwaysShowCommas) out.append(", "); - } } - return Component.translatable("hexcasting.tooltip.list_contents", out).withStyle(ChatFormatting.DARK_PURPLE); + } + return Component.translatable("hexcasting.tooltip.list_contents", out).withStyle(ChatFormatting.DARK_PURPLE); + } + + public static IotaType TYPE = new IotaType<>() { + + public static final MapCodec CODEC = SpellList.getCODEC() + .xmap(ListIota::new, ListIota::getList) + .fieldOf("list"); + public static final StreamCodec STREAM_CODEC = + SpellList.getSTREAM_CODEC().map(ListIota::new, ListIota::getList); + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public StreamCodec streamCodec() { + return STREAM_CODEC; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt index 7f227168ff..97bcca7a4f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt @@ -124,6 +124,9 @@ data class HexPattern(val startDir: HexDir, val angles: MutableList = } companion object { + const val TAG_START_DIR = "start_dir" + const val TAG_ANGLES = "angles" + @JvmField val CODEC: Codec = RecordCodecBuilder.create { instance -> instance.group( diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index d6aee987af..4def9f9862 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -460,7 +460,7 @@ public void buildRecipes(RecipeOutput recipes) { .requires(HexBlocks.AMETHYST_PILLAR) .unlockedBy("has_item", has(HexBlocks.SLATE)).save(recipes); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(Blocks.AMETHYST_BLOCK), + new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), new VillagerIngredient(null, null, 3), Blocks.BUDDING_AMETHYST.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) @@ -744,7 +744,9 @@ protected Ingredient ingredientOf(@Nullable TagKey item) { return item == null ? null : Ingredient.of(item); } - private void stoneSet(Consumer recipes, Item base, Item bricks, Item smallBricks, Item tiles, @Nullable Item pillar) { + private void stoneSet(RecipeOutput recipes, Item base, Item bricks, Item smallBricks, Item tiles, @Nullable Item pillar) { + String smallBricksPath = BuiltInRegistries.ITEM.getKey(smallBricks).getPath(); + String bricksPath = BuiltInRegistries.ITEM.getKey(bricks).getPath(); // Bricks from base block ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, bricks, 4) .define('#', base) @@ -757,13 +759,13 @@ private void stoneSet(Consumer recipes, Item base, Item bricks, ShapelessRecipeBuilder.shapeless(RecipeCategory.BUILDING_BLOCKS, bricks) .requires(smallBricks) .unlockedBy("has_item", hasItem(base)) - .save(recipes, modLoc(bricks + "_from_" + smallBricks)); + .save(recipes, modLoc(bricksPath + "_from_" + smallBricksPath)); // Small bricks from bricks ShapelessRecipeBuilder.shapeless(RecipeCategory.BUILDING_BLOCKS, smallBricks) .requires(bricks) .unlockedBy("has_item", hasItem(base)) - .save(recipes, modLoc(smallBricks + "_from_" + bricks)); + .save(recipes, modLoc(smallBricksPath + "_from_" + bricksPath)); // Tiles from bricks ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, tiles, 4) @@ -784,11 +786,12 @@ private void stoneSet(Consumer recipes, Item base, Item bricks, } } - private void stoneCutterFromTag(Consumer recipes, TagKey tagKey, Item ...results) { + private void stoneCutterFromTag(RecipeOutput recipes, TagKey tagKey, Item ...results) { for (Item result : results) { + var resultPath = BuiltInRegistries.ITEM.getKey(result).getPath(); SingleItemRecipeBuilder.stonecutting(Ingredient.of(tagKey), RecipeCategory.BUILDING_BLOCKS, result) .unlockedBy("has_item", hasItem(tagKey)) - .save(recipes, modLoc("stonecutting/" + result)); + .save(recipes, modLoc("stonecutting/" + resultPath)); } } } diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json index 98b2fca094..9785217d90 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/ancient_cyphers.json @@ -12,7 +12,7 @@ { "type": "patchouli:spotlight", "text": "hexcasting.page.ancient_cyphers.2", - "item": "hexcasting:ancient_cypher{variant:0},hexcasting:ancient_cypher{variant:1},hexcasting:ancient_cypher{variant:2},hexcasting:ancient_cypher{variant:3},hexcasting:ancient_cypher{variant:4},hexcasting:ancient_cypher{variant:5},hexcasting:ancient_cypher{variant:6},hexcasting:ancient_cypher{variant:7}" + "item": "hexcasting:ancient_cypher[hexcasting:variant=0],hexcasting:ancient_cypher[hexcasting:variant=1],hexcasting:ancient_cypher[hexcasting:variant=2],hexcasting:ancient_cypher[hexcasting:variant=3],hexcasting:ancient_cypher[hexcasting:variant=4],hexcasting:ancient_cypher[hexcasting:variant=5],hexcasting:ancient_cypher[hexcasting:variant=6],hexcasting:ancient_cypher[hexcasting:variant=7]" }, { "type": "patchouli:crafting", diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/creative_items.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/creative_items.json index 31ba2000c5..6cd91fc238 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/creative_items.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/items/creative_items.json @@ -24,7 +24,7 @@ "type": "patchouli:spotlight", "title": "hexcasting.page.creative_items.debug_media.title", "text": "hexcasting.page.creative_items.debug_media.desc", - "item": "hexcasting:creative_unlocker{display:{Name:'{\\\"text\\\":\\\"debug media\\\"}'}}" + "item": "hexcasting:creative_unlocker[custom_name='{text:\"debug media\"}']" } ] } \ No newline at end of file diff --git a/Fabric/build.gradle b/Fabric/build.gradle index ae4f9fca8d..b12f4b9e0c 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -1,4 +1,4 @@ -splugins { +plugins { // id 'fabric-loom' version "1.8.9" id 'com.gradleup.shadow' } diff --git a/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json b/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json deleted file mode 100644 index d936f71efc..0000000000 --- a/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/c/tags/item/gems.json b/Fabric/src/generated/resources/data/c/tags/item/gems.json deleted file mode 100644 index 6c55bdef92..0000000000 --- a/Fabric/src/generated/resources/data/c/tags/item/gems.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:charged_amethyst" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/tags/block/brittle.json b/Fabric/src/generated/resources/data/create/tags/block/brittle.json deleted file mode 100644 index fb66be6093..0000000000 --- a/Fabric/src/generated/resources/data/create/tags/block/brittle.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - { - "id": "#hexcasting:slate", - "required": false - } - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json deleted file mode 100644 index d36fd4dc3b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_record" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_record" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json deleted file mode 100644 index 18f9ea380f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:budding_amethyst" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:budding_amethyst" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json deleted file mode 100644 index cc4c924b54..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_boolean" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_boolean" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json deleted file mode 100644 index 8a43f8bac3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_redstone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_redstone" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json deleted file mode 100644 index 939dcb6e4e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_look" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_look" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json deleted file mode 100644 index c4fc49fd24..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_rightclick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_rightclick" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 31d9085f82..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_storedplayer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_storedplayer" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json deleted file mode 100644 index 6dfe849d9f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quench_allay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quench_allay" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json deleted file mode 100644 index 96746726ec..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_packing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_packing" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json deleted file mode 100644 index ff10efd290..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_unpacking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_unpacking" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json deleted file mode 100644 index a5ab663568..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json deleted file mode 100644 index ab1194da4a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json deleted file mode 100644 index 31556a4ca8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json deleted file mode 100644 index 1d09e6fdf8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence_gate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence_gate" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json deleted file mode 100644 index ab66016e10..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_panel" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json deleted file mode 100644 index f031431d00..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_logs" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_planks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_planks" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json deleted file mode 100644 index 317bd1fd11..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_slab" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json deleted file mode 100644 index 069989ca28..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_stairs" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json deleted file mode 100644 index 5179827061..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_tile" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_tile" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json deleted file mode 100644 index f0aaf4b1fd..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_wood" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json deleted file mode 100644 index d676daa7f7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json deleted file mode 100644 index 770d62ab2b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json deleted file mode 100644 index b2f96c2797..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block_from_slates" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block_from_slates" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json deleted file mode 100644 index 3c2f410ce6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_block" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json deleted file mode 100644 index 4d048fc250..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:stripped_edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stripped_edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stripped_edified_wood" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json deleted file mode 100644 index 6ae4bdbbb6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper_lantern" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ageing_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ageing_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json deleted file mode 100644 index 91debb7ca5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_sconce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_sconce" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json deleted file mode 100644 index f36c1abfc2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:ancient_scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json deleted file mode 100644 index 1bff0c5ff6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json deleted file mode 100644 index 2dc4651527..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_medium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_medium" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json deleted file mode 100644 index 63884d313e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json deleted file mode 100644 index 2e68c56849..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_small" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json deleted file mode 100644 index 551899a3a3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json deleted file mode 100644 index bb64c267e5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:sub_sandwich" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:sub_sandwich" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json deleted file mode 100644 index b032476ae7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/charged" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/charged" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json deleted file mode 100644 index 299d8a4550..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/dust" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/dust" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json deleted file mode 100644 index d9f9dfbb25..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/shard" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json deleted file mode 100644 index e04ea0f7b0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:default_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:default_colorizer" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json deleted file mode 100644 index 486da412cd..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_black" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json deleted file mode 100644 index c23b00add5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_blue" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json deleted file mode 100644 index daf49d8674..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_brown" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json deleted file mode 100644 index bc159a4f91..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_cyan" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json deleted file mode 100644 index 959c3b871a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_gray" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json deleted file mode 100644 index ae496bdb93..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_green" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json deleted file mode 100644 index 9e660ad5de..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_blue" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json deleted file mode 100644 index b2b51d665b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_gray" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json deleted file mode 100644 index b21321754b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_lime" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json deleted file mode 100644 index 38097fe636..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_magenta" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json deleted file mode 100644 index a5e2054cd0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_orange" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json deleted file mode 100644 index 868366c0a4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_pink" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json deleted file mode 100644 index b9d4282404..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_purple" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json deleted file mode 100644 index 515062d384..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_red" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json deleted file mode 100644 index 3fbaf1ba20..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_white" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json deleted file mode 100644 index e707bc9937..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_yellow" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json deleted file mode 100644 index e07c954cd3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_agender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_agender" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json deleted file mode 100644 index 8413c66774..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aroace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aroace" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json deleted file mode 100644 index 37604e5939..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aromantic" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aromantic" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json deleted file mode 100644 index 74df9afba7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_asexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_asexual" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json deleted file mode 100644 index a3e18ad420..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_bisexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_bisexual" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json deleted file mode 100644 index e131fc73f1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demiboy" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demiboy" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json deleted file mode 100644 index a164b59ce6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demigirl" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demigirl" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json deleted file mode 100644 index 59c4f8fdeb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_gay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_gay" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json deleted file mode 100644 index 5c3233fa98..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderfluid" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderfluid" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json deleted file mode 100644 index fd6f1355ef..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderqueer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderqueer" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json deleted file mode 100644 index 091329fe3f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_intersex" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_intersex" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json deleted file mode 100644 index 3d4dec1d10..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_lesbian" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_lesbian" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json deleted file mode 100644 index 83c4964af9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_nonbinary" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_nonbinary" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json deleted file mode 100644 index 89512b05e1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_plural" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_plural" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json deleted file mode 100644 index 70dced6396..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_transgender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_transgender" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json deleted file mode 100644 index fbcdbfebf4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:uuid_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:uuid_colorizer" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json deleted file mode 100644 index 44a4110650..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_bookshelf" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_bookshelf" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json deleted file mode 100644 index b2a6f52851..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_ligature" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_ligature" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json deleted file mode 100644 index e00a4fdf00..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix/empty" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json deleted file mode 100644 index b6cd73817c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_button" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_button" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json deleted file mode 100644 index 72dce77364..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_door" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_door" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json deleted file mode 100644 index f207372eeb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_pressure_plate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_pressure_plate" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json deleted file mode 100644 index be0fadb15b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_trapdoor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_trapdoor" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json deleted file mode 100644 index 0b4aa3256c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus/empty" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json deleted file mode 100644 index b1cb841b3e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:abacus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:abacus" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json deleted file mode 100644 index 221cf418c3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:artifact" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:artifact" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json deleted file mode 100644 index 5489ea0467..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:cypher" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:cypher" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json deleted file mode 100644 index 4e19de9e5e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json deleted file mode 100644 index f67d8502aa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus_rotated" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus_rotated" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json deleted file mode 100644 index 6a24d2b333..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:jeweler_hammer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:jeweler_hammer" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json deleted file mode 100644 index 3411cb2187..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:lens" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:lens" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json deleted file mode 100644 index ef5a492652..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_chorus": { - "conditions": { - "items": [ - { - "items": "minecraft:chorus_fruit" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_focus": { - "conditions": { - "items": [ - { - "items": "hexcasting:focus" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:spellbook" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_focus", - "has_chorus" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:spellbook" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json deleted file mode 100644 index c1e018b4ec..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/acacia" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/acacia" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json deleted file mode 100644 index 19094ad2fe..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/bamboo" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/bamboo" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json deleted file mode 100644 index ca6c180cfa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/birch" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/birch" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json deleted file mode 100644 index 38107a9b52..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/cherry" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/cherry" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json deleted file mode 100644 index da68b592c5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/crimson" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/crimson" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json deleted file mode 100644 index da9937e87d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/dark_oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/dark_oak" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json deleted file mode 100644 index 99d19ed3bf..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/edified" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/edified" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json deleted file mode 100644 index 80fe7c43f6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/jungle" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/jungle" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json deleted file mode 100644 index 0064814593..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mangrove" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mangrove" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json deleted file mode 100644 index adb60836c1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mindsplice" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mindsplice" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json deleted file mode 100644 index d11084b78d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/oak" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json deleted file mode 100644 index 1ce63b78e3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/quenched" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/quenched" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json deleted file mode 100644 index cbad54cf88..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/spruce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/spruce" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json deleted file mode 100644 index ffff5199c6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/warped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/warped" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json deleted file mode 100644 index f50c1673fa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:thought_knot" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:thought_knot" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json deleted file mode 100644 index 17c0d69b1f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:trinket" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:trinket" - ] - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json deleted file mode 100644 index 78a36f62ec..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_bookshelf" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_bookshelf" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json deleted file mode 100644 index 02be275bc1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_ligature" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_ligature" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json deleted file mode 100644 index 5c93f81681..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_record" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_record" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json deleted file mode 100644 index 4c60a77364..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json deleted file mode 100644 index 3d39f82987..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json deleted file mode 100644 index 7c054a0aab..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_dust_block" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json deleted file mode 100644 index 1d66e9bbad..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "minecraft:shears" - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json deleted file mode 100644 index 2eeb112461..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_pillar" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json deleted file mode 100644 index e2c38fe09e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_sconce" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_sconce" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json deleted file mode 100644 index 13010296ca..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_tiles" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json deleted file mode 100644 index 2bb2887920..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json deleted file mode 100644 index f2ea006a03..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json deleted file mode 100644 index 19a6706346..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "minecraft:shears" - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:aventurine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json deleted file mode 100644 index 8318d3456c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "minecraft:shears" - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#c:shears" - } - } - ] - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:citrine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json deleted file mode 100644 index 7510be752b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/boolean" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/boolean" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json deleted file mode 100644 index 056282de33..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/empty" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json deleted file mode 100644 index b130eb19de..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/redstone" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json deleted file mode 100644 index a24172124e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_button" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_button" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json deleted file mode 100644 index 942a65484f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "block": "hexcasting:edified_door", - "condition": "minecraft:block_state_property", - "properties": { - "half": "lower" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_door" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_door" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json deleted file mode 100644 index f45eea22be..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json deleted file mode 100644 index 01cbf2a5e1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence_gate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence_gate" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json deleted file mode 100644 index 396a3fcb45..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json deleted file mode 100644 index d6c0759bfa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_amethyst" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_amethyst" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json deleted file mode 100644 index 31892f2177..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_aventurine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_aventurine" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json deleted file mode 100644 index 21ac1cd0fb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_citrine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_citrine" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json deleted file mode 100644 index f9c2c33343..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_purple" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_purple" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json deleted file mode 100644 index 83cb1f1b59..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_panel" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_panel" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json deleted file mode 100644 index 5f1b5f7280..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_planks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_planks" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json deleted file mode 100644 index d733b30a49..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_pressure_plate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_pressure_plate" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json deleted file mode 100644 index 0bdc00f6b3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_slab" - } - ], - "functions": [ - { - "add": false, - "conditions": [ - { - "block": "hexcasting:edified_slab", - "condition": "minecraft:block_state_property", - "properties": { - "type": "double" - } - } - ], - "count": 2.0, - "function": "minecraft:set_count" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_slab" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json deleted file mode 100644 index 7cb6566434..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_stairs" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_stairs" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json deleted file mode 100644 index dbc6bd1426..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_tile" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_tile" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json deleted file mode 100644 index f76ea0437f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_trapdoor" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_trapdoor" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json deleted file mode 100644 index 2e1faee977..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_wood" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json deleted file mode 100644 index 67fe1185ac..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/empty" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json deleted file mode 100644 index 87f6f0ef09..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/look" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/look" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json deleted file mode 100644 index 1635ee4207..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/redstone" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json deleted file mode 100644 index 37f1e9df10..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/rightclick" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/rightclick" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json deleted file mode 100644 index 92c0175113..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "minecraft:air" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "add": true, - "conditions": [ - { - "chances": [ - 0.25, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "name": "hexcasting:quenched_allay_shard" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json deleted file mode 100644 index eb1a87b224..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json deleted file mode 100644 index 879089b6d4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json deleted file mode 100644 index 0c81157382..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_tiles" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json deleted file mode 100644 index 8c3d628108..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json deleted file mode 100644 index ccea471c66..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json deleted file mode 100644 index eeb8f5c955..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:copy_components", - "include": [ - "hexcasting:pattern" - ], - "source": "block_entity" - } - ], - "name": "hexcasting:slate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json deleted file mode 100644 index f6d9ea8d1a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 6f7cfb5825..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json deleted file mode 100644 index 96dd26f7fb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json deleted file mode 100644 index e91ebad3ce..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json deleted file mode 100644 index d136fe7460..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_block" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json deleted file mode 100644 index d42593f8d5..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json deleted file mode 100644 index f77a608dec..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks_small" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json deleted file mode 100644 index 060b60ebf9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_pillar" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json deleted file mode 100644 index 81cda1a13a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_tiles" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json deleted file mode 100644 index 7dab40f3a1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_log" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json deleted file mode 100644 index 60b009f032..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_wood" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json deleted file mode 100644 index e87bc89af2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json +++ /dev/null @@ -1,211 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 1.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 0.0 - }, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - }, - { - "chances": [ - 0.25, - 0.35, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - }, - { - "chance": 0.125, - "condition": "minecraft:random_chance" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:inject/amethyst_cluster" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json deleted file mode 100644 index 76d393b033..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "minecraft:planks" - } - }, - "pattern": [ - "WAW", - "SAS", - "WAW" - ], - "result": { - "count": 1, - "id": "hexcasting:abacus" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json deleted file mode 100644 index fca2df35ca..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - [ - { - "item": "minecraft:brown_dye" - }, - { - "tag": "c:brown_dye" - }, - { - "tag": "c:brown_dyes" - } - ], - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json deleted file mode 100644 index 055ac48308..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "C": { - "item": "minecraft:book" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "CCC", - "LPL" - ], - "result": { - "count": 1, - "id": "hexcasting:akashic_bookshelf" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json deleted file mode 100644 index bbcc3f83e7..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "1": { - "item": "hexcasting:amethyst_dust" - }, - "2": { - "item": "minecraft:amethyst_shard" - }, - "3": { - "item": "hexcasting:charged_amethyst" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "123", - "LPL" - ], - "result": { - "count": 4, - "id": "hexcasting:akashic_ligature" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json deleted file mode 100644 index 1da337229f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "X": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "XX", - "XX" - ], - "result": { - "count": 1, - "id": "hexcasting:amethyst_dust_block" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json deleted file mode 100644 index db42cb3711..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust_block" - } - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json deleted file mode 100644 index 6c20a9e580..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": [ - { - "item": "minecraft:copper_ingot" - }, - { - "tag": "c:copper_ingots" - } - ], - "T": { - "item": "hexcasting:charged_amethyst" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_sconce" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json deleted file mode 100644 index 300139c437..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:amethyst_block" - }, - "D": { - "item": "minecraft:amethyst_block" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:amethyst_tiles" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json deleted file mode 100644 index cef3280ce8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - [ - { - "item": "minecraft:brown_dye" - }, - { - "tag": "c:brown_dye" - }, - { - "tag": "c:brown_dyes" - } - ], - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json deleted file mode 100644 index d99d9ba91b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:ancient_scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json b/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json deleted file mode 100644 index 9db7d8ad92..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "D": { - "tag": "minecraft:creeper_drop_music_discs" - }, - "F": [ - { - "item": "minecraft:gold_ingot" - }, - { - "tag": "c:gold_ingots" - } - ] - }, - "pattern": [ - " F ", - "FAF", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:artifact" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json deleted file mode 100644 index 750ad2dcfe..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:akashic_ligature" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 5, - "profession": "minecraft:librarian" - }, - "result": { - "Name": "hexcasting:akashic_record" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json deleted file mode 100644 index 0532b2e5ed..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 3 - }, - "result": { - "Name": "minecraft:budding_amethyst" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json deleted file mode 100644 index 5e97ada05f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:shepherd" - }, - "result": { - "Name": "hexcasting:directrix/boolean", - "Properties": { - "energized": "false", - "facing": "north", - "state": "neither" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json deleted file mode 100644 index afb314d043..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:mason" - }, - "result": { - "Name": "hexcasting:directrix/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "false" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json deleted file mode 100644 index 7d77364f78..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:fletcher" - }, - "result": { - "Name": "hexcasting:impetus/look", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json deleted file mode 100644 index 02fbae2538..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:toolsmith" - }, - "result": { - "Name": "hexcasting:impetus/rightclick", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json deleted file mode 100644 index f79dca1d11..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:cleric" - }, - "result": { - "Name": "hexcasting:impetus/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "true" - } - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json deleted file mode 100644 index 076b4e0745..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 100000, - "entityIn": { - "type": "hexcasting:entity_type", - "entityType": "minecraft:allay" - }, - "result": { - "Name": "hexcasting:quenched_allay" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json b/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json deleted file mode 100644 index f45f438c5b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": [ - { - "item": "minecraft:copper_ingot" - }, - { - "tag": "c:copper_ingots" - } - ], - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:cypher" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json deleted file mode 100644 index 4d9e9902e8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:charged_amethyst" - } - ], - "result": { - "count": 4, - "id": "hexcasting:charged_amethyst" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json deleted file mode 100644 index 5023760773..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:amethyst_dust" - } - ], - "result": { - "count": 31, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json deleted file mode 100644 index e441d9bf5f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "minecraft:amethyst_shard" - } - ], - "result": { - "count": 7, - "id": "minecraft:amethyst_shard" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json deleted file mode 100644 index b61e7ef20a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:copper_ingot" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 1, - "id": "hexcasting:default_colorizer" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json deleted file mode 100644 index 986fa97d99..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "C": { - "item": "minecraft:comparator" - }, - "O": { - "item": "minecraft:observer" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "CSS", - "OAO", - "SSC" - ], - "result": { - "count": 1, - "id": "hexcasting:directrix/empty" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json deleted file mode 100644 index 43dcd86862..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:black_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_black" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json deleted file mode 100644 index b9cd3b99c3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_blue" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json deleted file mode 100644 index f02b87049c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:brown_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_brown" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json deleted file mode 100644 index 93380132c6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:cyan_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_cyan" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json deleted file mode 100644 index c803427d5a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_gray" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json deleted file mode 100644 index e592b36cca..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:green_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_green" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json deleted file mode 100644 index d8eb9b5986..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_blue" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json deleted file mode 100644 index e6efc2af9a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_gray" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json deleted file mode 100644 index 645db81176..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:lime_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_lime" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json deleted file mode 100644 index 9476c0a098..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:magenta_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_magenta" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json deleted file mode 100644 index f6f815b95f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:orange_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_orange" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json deleted file mode 100644 index 065db19c23..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:pink_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_pink" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json deleted file mode 100644 index 85dab6119e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:purple_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_purple" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json deleted file mode 100644 index 8acba0fc1a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:red_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_red" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json deleted file mode 100644 index d76ee9ba69..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:white_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_white" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json deleted file mode 100644 index 35ffbdd8df..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:yellow_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_yellow" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json deleted file mode 100644 index 28edc09f6d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_focus", - "category": "misc" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json deleted file mode 100644 index 5bf703566d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_spellbook", - "category": "misc" -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json deleted file mode 100644 index 10ad25b4aa..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "redstone", - "ingredients": [ - { - "tag": "hexcasting:edified_planks" - } - ], - "result": { - "count": 1, - "id": "hexcasting:edified_button" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json deleted file mode 100644 index 6ff2941615..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW", - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_door" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json deleted file mode 100644 index f1a7c7ec45..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WSW", - "WSW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_fence" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json deleted file mode 100644 index a38d45ca38..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "SWS", - "SWS" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_fence_gate" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json deleted file mode 100644 index 0baf420f31..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "tag": "hexcasting:edified_planks" - }, - "D": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "DCD", - "C C", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:edified_panel" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json deleted file mode 100644 index 7ea641db71..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "hexcasting:edified_logs" - } - ], - "result": { - "count": 4, - "id": "hexcasting:edified_planks" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json deleted file mode 100644 index fb80df82d1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_pressure_plate" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json deleted file mode 100644 index efda8df52a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_slab" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json deleted file mode 100644 index ca2e03f9c3..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "W ", - "WW ", - "WWW" - ], - "result": { - "count": 4, - "id": "hexcasting:edified_stairs" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json deleted file mode 100644 index bfca8c3437..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW ", - "W W", - " WW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_tile" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json deleted file mode 100644 index 89928fcc73..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW", - "WWW" - ], - "result": { - "count": 2, - "id": "hexcasting:edified_trapdoor" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json deleted file mode 100644 index 4e95e0bdc6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_wood" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json deleted file mode 100644 index 011cde4d82..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": [ - { - "item": "minecraft:glowstone_dust" - }, - { - "tag": "c:glowstone_dusts" - } - ], - "L": { - "item": "minecraft:leather" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GLG", - "PAP", - "GLG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json deleted file mode 100644 index b91b4363b9..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": [ - { - "item": "minecraft:glowstone_dust" - }, - { - "tag": "c:glowstone_dusts" - } - ], - "L": { - "item": "minecraft:leather" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GPG", - "LAL", - "GPG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json deleted file mode 100644 index b5d3b9fd5c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:iron_bars" - }, - "P": { - "item": "minecraft:purpur_block" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "PSS", - "BAB", - "SSP" - ], - "result": { - "count": 1, - "id": "hexcasting:impetus/empty" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json deleted file mode 100644 index e1ec585bb6..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "I": [ - { - "item": "minecraft:iron_ingot" - }, - { - "tag": "c:iron_ingots" - } - ], - "N": [ - { - "item": "minecraft:iron_nugget" - }, - { - "tag": "c:iron_nuggets" - } - ], - "S": [ - { - "item": "minecraft:stick" - }, - { - "tag": "c:wood_sticks" - } - ] - }, - "pattern": [ - "IAN", - " S ", - " S " - ], - "result": { - "count": 1, - "id": "hexcasting:jeweler_hammer" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json b/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json deleted file mode 100644 index d7e33ac36b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "item": "minecraft:glass" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:lens" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json deleted file mode 100644 index d5401c0952..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_agender" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json deleted file mode 100644 index 25c32f412c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat_seeds" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aroace" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json deleted file mode 100644 index ab923e9b61..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:arrow" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aromantic" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json deleted file mode 100644 index c41a3223de..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:bread" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_asexual" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json deleted file mode 100644 index 157dff5b64..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_bisexual" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json deleted file mode 100644 index c79d6fd805..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_iron" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demiboy" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json deleted file mode 100644 index 4a87fb83dd..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_copper" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demigirl" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json deleted file mode 100644 index 3922bf5fa1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:stone_brick_wall" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_gay" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json deleted file mode 100644 index 788be0d074..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:water_bucket" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderfluid" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json deleted file mode 100644 index db56478852..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass_bottle" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderqueer" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json deleted file mode 100644 index 0cf8605f6e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:azalea" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_intersex" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json deleted file mode 100644 index 60faeb98cb..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:honeycomb" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_lesbian" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json deleted file mode 100644 index 1592908ece..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:moss_block" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_nonbinary" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json deleted file mode 100644 index 662aaf38fc..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:repeater" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_plural" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json deleted file mode 100644 index cce2b91ea8..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:egg" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_transgender" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json deleted file mode 100644 index cf7a4fcfb1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "PPA", - "PPP", - "PPP" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json deleted file mode 100644 index 85b2a98f34..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "PP ", - "PP " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_medium" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json deleted file mode 100644 index 1feb96a530..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:paper" - }, - "D": { - "item": "minecraft:paper" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:scroll_paper" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json deleted file mode 100644 index 5434f4c7f1..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json deleted file mode 100644 index c64a3e544a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "P " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_small" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json deleted file mode 100644 index eb718972c2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "S": { - "item": "minecraft:deepslate" - } - }, - "pattern": [ - " A ", - "SSS" - ], - "result": { - "count": 6, - "id": "hexcasting:slate" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json deleted file mode 100644 index 975fea26a0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:deepslate" - }, - "D": { - "item": "minecraft:deepslate" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json deleted file mode 100644 index 92bf412fdf..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "hexcasting:slate" - } - }, - "pattern": [ - "S", - "S" - ], - "result": { - "count": 1, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json deleted file mode 100644 index 0d8bbb5971..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:writable_book" - }, - "F": { - "item": "minecraft:chorus_fruit" - }, - "N": [ - { - "item": "minecraft:gold_nugget" - }, - { - "tag": "c:gold_nuggets" - } - ] - }, - "pattern": [ - "NBA", - "NFA", - "NBA" - ], - "result": { - "count": 1, - "id": "hexcasting:spellbook" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json deleted file mode 100644 index a5e01a9c9a..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:acacia_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/acacia" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json deleted file mode 100644 index 8c648a860c..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:bamboo_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/bamboo" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json deleted file mode 100644 index 2cee68c976..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:birch_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/birch" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json deleted file mode 100644 index fb19b26271..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:cherry_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/cherry" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json deleted file mode 100644 index 6f8b4dd09e..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:crimson_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/crimson" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json deleted file mode 100644 index b4a9aea823..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:dark_oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/dark_oak" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json deleted file mode 100644 index 29378f8085..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:edified_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/edified" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json deleted file mode 100644 index a3b382cf11..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:jungle_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/jungle" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json deleted file mode 100644 index 2ad01c0d69..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:mangrove_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mangrove" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json deleted file mode 100644 index 41c9e8abb0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:brainswept_circle_components" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mindsplice" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json deleted file mode 100644 index 75d6d9daab..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/oak" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json deleted file mode 100644 index 91fd1fc452..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:quenched_allay_shard" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/quenched" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json deleted file mode 100644 index 0ab7166a60..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:spruce_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/spruce" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json deleted file mode 100644 index 8a71b96aaf..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:warped_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/warped" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json deleted file mode 100644 index 7eb40a9ada..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "item": "minecraft:amethyst_block" - }, - "result": { - "count": 1, - "id": "hexcasting:amethyst_tiles" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json deleted file mode 100644 index 0ccb5ae8e2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:stripped_edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:stripped_edified_wood" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json deleted file mode 100644 index 82a511fde4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "B": { - "item": "minecraft:bread" - }, - "C": { - "item": "minecraft:cooked_beef" - }, - "S": { - "item": "minecraft:stick" - } - }, - "pattern": [ - " SA", - " C ", - " B " - ], - "result": { - "count": 1, - "id": "hexcasting:sub_sandwich" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json deleted file mode 100644 index d89ad83310..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "equipment", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust" - }, - { - "item": "minecraft:string" - } - ], - "result": { - "count": 1, - "id": "hexcasting:thought_knot" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json b/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json deleted file mode 100644 index f2e371553d..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": [ - { - "item": "minecraft:iron_ingot" - }, - { - "tag": "c:iron_ingots" - } - ], - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:trinket" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json deleted file mode 100644 index 235a2aff68..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 1, - "id": "hexcasting:uuid_colorizer" - } -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json deleted file mode 100644 index bf9788dbf2..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:amethyst_block", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_pillar" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json deleted file mode 100644 index 7fc52a816b..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_block", - "hexcasting:conjured_light" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json deleted file mode 100644 index fafd43cff0..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small", - "hexcasting:quenched_allay_tiles" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json deleted file mode 100644 index d8769826ea..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_tiles", - "hexcasting:slate_pillar" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json deleted file mode 100644 index 0f2bcab34f..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "minecraft:kelp", - "minecraft:kelp_plant", - "minecraft:seagrass", - "minecraft:tall_seagrass" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json deleted file mode 100644 index 1f7070a707..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust", - "minecraft:amethyst_shard", - "hexcasting:charged_amethyst", - "hexcasting:creative_unlocker" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json deleted file mode 100644 index 52ac4c0c96..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:glass_bottle" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json deleted file mode 100644 index 674a370049..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:honeycomb" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json deleted file mode 100644 index 29f4595c62..0000000000 --- a/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:staff/edified", - "hexcasting:staff/oak", - "hexcasting:staff/spruce", - "hexcasting:staff/birch", - "hexcasting:staff/jungle", - "hexcasting:staff/acacia", - "hexcasting:staff/dark_oak", - "hexcasting:staff/crimson", - "hexcasting:staff/warped", - "hexcasting:staff/mangrove", - "hexcasting:staff/cherry", - "hexcasting:staff/bamboo", - "hexcasting:staff/quenched", - "hexcasting:staff/mindsplice" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json deleted file mode 100644 index 7a23dc1ec1..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_light", - "hexcasting:conjured_block", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_sconce" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json deleted file mode 100644 index 269de59e0a..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json deleted file mode 100644 index 0d6037e186..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "values": [ - "hexcasting:akashic_record", - "hexcasting:akashic_bookshelf", - "hexcasting:akashic_ligature", - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood", - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile", - "hexcasting:edified_door", - "hexcasting:edified_trapdoor", - "hexcasting:edified_slab", - "hexcasting:edified_button", - "hexcasting:edified_stairs", - "hexcasting:edified_fence", - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json deleted file mode 100644 index a8b1c2eb67..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_tiles", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_pillar", - "hexcasting:slate", - "hexcasting:directrix/empty", - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean", - "hexcasting:impetus/empty", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/look", - "hexcasting:impetus/redstone", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_pillar", - "hexcasting:slate_amethyst_tiles", - "hexcasting:slate_amethyst_bricks", - "hexcasting:slate_amethyst_bricks_small", - "hexcasting:slate_amethyst_pillar", - "hexcasting:amethyst_sconce", - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_tiles", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json deleted file mode 100644 index 02d08df2b3..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust_block" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json deleted file mode 100644 index 117722b2be..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence", - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java index ef5a1d6124..2f293ec6a1 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java @@ -23,10 +23,16 @@ public class BrainsweepeeEmiStack extends EmiStack { public final BrainsweepeeIngredient ingredient; private final ResourceLocation id; + private final DataComponentPatch componentChanges; public BrainsweepeeEmiStack(BrainsweepeeIngredient ingr) { + this(ingr, DataComponentPatch.EMPTY); + } + + public BrainsweepeeEmiStack(BrainsweepeeIngredient ingr, DataComponentPatch patches) { this.ingredient = ingr; this.id = modLoc(this.ingredient.getSomeKindOfReasonableIDForEmi()); + this.componentChanges = patches; } @Override @@ -41,7 +47,7 @@ public boolean isEmpty() { @Override public DataComponentPatch getComponentChanges() { - return null; + return componentChanges; } @Override diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiEdifyRecipe.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiEdifyRecipe.java index 4c3f8d4c4d..e3d9a7be1e 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiEdifyRecipe.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiEdifyRecipe.java @@ -46,7 +46,7 @@ public EmiRecipeCategory getCategory() { @Override public @Nullable ResourceLocation getId() { - return HexEMIPlugin.EDIFY_ID; + return modLoc("/edify"); } @Override diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java index e3a2bfde60..04aa92c6b8 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java @@ -40,7 +40,7 @@ public EmiRecipeCategory getCategory() { @Override public @Nullable ResourceLocation getId() { - return HexEMIPlugin.PHIAL_ID; + return modLoc("/craft/battery"); } @Override diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java index a1aa0cf4bd..ecde4a1b63 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java @@ -52,7 +52,10 @@ public void register(EmiRegistry registry) { .map(EmiStack::of).toList()); var inputEntity = new BrainsweepeeEmiStack(recipe.value().entityIn()); var output = EmiStack.of(recipe.value().result().getBlock()); - registry.addRecipe(new EmiBrainsweepRecipe(inputBlocks, inputEntity, output, recipe.id())); + var outputId = output.getId().getNamespace().equals("minecraft") ? output.getId().getPath() : output.getId().toString(); + var inputEntityId = inputEntity.getName().getString().toLowerCase().replaceAll(" ", "_"); + var recipeId = modLoc("/brainsweep/" + (outputId.replaceAll(":", "/")) + "_from_" + inputEntityId); + registry.addRecipe(new EmiBrainsweepRecipe(inputBlocks, inputEntity, output, recipeId)); } if (PhialRecipeStackBuilder.shouldAddRecipe()) { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java index 420e7832bf..e9a3a00062 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java @@ -1,4 +1,4 @@ -spackage at.petrak.hexcasting.fabric.network; +package at.petrak.hexcasting.fabric.network; import at.petrak.hexcasting.common.msgs.*; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; @@ -23,7 +23,6 @@ public static void initPackets() { PayloadTypeRegistry.playS2C().register(MsgBeepS2C.TYPE, MsgBeepS2C.STREAM_CODEC); PayloadTypeRegistry.playS2C().register(MsgShiftScrollC2S.TYPE, MsgShiftScrollC2S.STREAM_CODEC); PayloadTypeRegistry.playS2C().register(MsgCastParticleS2C.TYPE, MsgCastParticleS2C.STREAM_CODEC); - PayloadTypeRegistry.playS2C().register(MsgBlinkS2C.TYPE, MsgBlinkS2C.STREAM_CODEC); PayloadTypeRegistry.playS2C().register(MsgClearSpiralPatternsS2C.TYPE, MsgClearSpiralPatternsS2C.STREAM_CODEC); PayloadTypeRegistry.playS2C().register(MsgNewWallScrollS2C.TYPE, MsgNewWallScrollS2C.STREAM_CODEC); PayloadTypeRegistry.playS2C().register(MsgRecalcWallScrollDisplayS2C.TYPE, MsgRecalcWallScrollDisplayS2C.STREAM_CODEC); @@ -45,8 +44,6 @@ private static ServerPlayNetworking.PlayPayloadH public static void initClient() { ClientPlayNetworking.registerGlobalReceiver(MsgNewSpellPatternS2C.TYPE, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - ClientPlayNetworking.registerGlobalReceiver( - MsgBlinkS2C.TYPE, makeClientBoundHandler(MsgBlinkS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgCastParticleS2C.TYPE, makeClientBoundHandler(MsgCastParticleS2C::handle)); ClientPlayNetworking.registerGlobalReceiver(MsgOpenSpellGuiS2C.TYPE, diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index 643166430f..c9bcf4c9c0 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -270,7 +270,7 @@ public ADVariantItem findVariantHolder(ItemStack stack) { @Override public boolean isPigment(ItemStack stack) { - return stack.get(HexDataComponents.PIGMENT) != null; + return HexCardinalComponents.PIGMENT_ITEM_LOOKUP.find(stack, null) != null; } @Override diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 51e9e4284a..9f0b390b0b 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -1,3 +1,4 @@ + plugins { id 'com.gradleup.shadow' } diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index 3b624541aa..1d49dfda13 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -1,3 +1,5 @@ +platform=neoforge + neoforgeVersion=21.1.172 loom.platform=neoforge diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json deleted file mode 100644 index 2f79ec12a3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "variants": { - "facing=east,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 90 - }, - "facing=east,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 90 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 90 - } - ], - "facing=north,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true - }, - "facing=north,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true - } - ], - "facing=south,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 180 - }, - "facing=south,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 180 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 180 - } - ], - "facing=west,has_books=false": { - "model": "hexcasting:block/akashic_bookshelf_empty", - "uvlock": true, - "y": 270 - }, - "facing=west,has_books=true": [ - { - "model": "hexcasting:block/akashic_bookshelf_1", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_2", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_3", - "uvlock": true, - "y": 270 - }, - { - "model": "hexcasting:block/akashic_bookshelf_4", - "uvlock": true, - "y": 270 - } - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json deleted file mode 100644 index c4552b4918..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/akashic_ligature" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json deleted file mode 100644 index c2aa512a1e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/akashic_record" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json deleted file mode 100644 index 267e1b4d43..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_bricks" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json deleted file mode 100644 index 66b78f9a12..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_bricks_small" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json deleted file mode 100644 index c27c62ffcb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/amethyst_dust_block" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json deleted file mode 100644 index db8af585b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/amethyst_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json deleted file mode 100644 index 257e10ca4d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "variants": { - "facing=down": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 180 - }, - "facing=east": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 90 - }, - "facing=north": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90 - }, - "facing=south": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 180 - }, - "facing=up": { - "model": "hexcasting:block/deco/amethyst_pillar" - }, - "facing=west": { - "model": "hexcasting:block/deco/amethyst_pillar", - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json deleted file mode 100644 index af52410929..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/amethyst_sconce" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json deleted file mode 100644 index b716f2a5a9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/amethyst_tiles" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json deleted file mode 100644 index 1c809c022b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/ancient_scroll_paper" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json deleted file mode 100644 index 3a632c39f3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/ancient_scroll_paper_lantern" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json deleted file mode 100644 index 10383418f7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/aventurine_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json deleted file mode 100644 index 3207814e50..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/citrine_edified_leaves" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json deleted file mode 100644 index 5e8ffe700c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/conjured" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json deleted file mode 100644 index 5e8ffe700c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/conjured" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json deleted file mode 100644 index 155f55cfe6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_down", - "x": 90 - }, - "energized=false,facing=down,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_down", - "x": 90 - }, - "energized=false,facing=down,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_down", - "x": 90 - }, - "energized=false,facing=east,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_east", - "y": 90 - }, - "energized=false,facing=east,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_east", - "y": 90 - }, - "energized=false,facing=east,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_east", - "y": 90 - }, - "energized=false,facing=north,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_north" - }, - "energized=false,facing=north,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_north" - }, - "energized=false,facing=north,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_north" - }, - "energized=false,facing=south,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_south", - "y": 180 - }, - "energized=false,facing=south,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_south", - "y": 180 - }, - "energized=false,facing=south,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_south", - "y": 180 - }, - "energized=false,facing=up,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_up", - "x": -90 - }, - "energized=false,facing=up,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_up", - "x": -90 - }, - "energized=false,facing=up,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_up", - "x": -90 - }, - "energized=false,facing=west,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/dim_false_west", - "y": 270 - }, - "energized=false,facing=west,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/dim_neither_west", - "y": 270 - }, - "energized=false,facing=west,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/dim_true_west", - "y": 270 - }, - "energized=true,facing=down,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_down", - "x": 90 - }, - "energized=true,facing=down,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_down", - "x": 90 - }, - "energized=true,facing=down,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_down", - "x": 90 - }, - "energized=true,facing=east,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_east", - "y": 90 - }, - "energized=true,facing=east,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_east", - "y": 90 - }, - "energized=true,facing=east,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_east", - "y": 90 - }, - "energized=true,facing=north,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_north" - }, - "energized=true,facing=north,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_north" - }, - "energized=true,facing=north,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_north" - }, - "energized=true,facing=south,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_south", - "y": 180 - }, - "energized=true,facing=south,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_south", - "y": 180 - }, - "energized=true,facing=south,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_south", - "y": 180 - }, - "energized=true,facing=up,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_up", - "x": -90 - }, - "energized=true,facing=up,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_up", - "x": -90 - }, - "energized=true,facing=up,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_up", - "x": -90 - }, - "energized=true,facing=west,state=false": { - "model": "hexcasting:block/circle/directrix/boolean/lit_false_west", - "y": 270 - }, - "energized=true,facing=west,state=neither": { - "model": "hexcasting:block/circle/directrix/boolean/lit_neither_west", - "y": 270 - }, - "energized=true,facing=west,state=true": { - "model": "hexcasting:block/circle/directrix/boolean/lit_true_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json deleted file mode 100644 index 33b013562c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/directrix/empty/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/directrix/empty/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/directrix/empty/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/directrix/empty/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/directrix/empty/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/directrix/empty/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/directrix/empty/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/directrix/empty/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/directrix/empty/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/directrix/empty/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/directrix/empty/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/directrix/empty/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json deleted file mode 100644 index c93068cabf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_down", - "x": 90 - }, - "energized=false,facing=down,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_down", - "x": 90 - }, - "energized=false,facing=east,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_east", - "y": 90 - }, - "energized=false,facing=east,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_east", - "y": 90 - }, - "energized=false,facing=north,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_north" - }, - "energized=false,facing=north,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_north" - }, - "energized=false,facing=south,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_south", - "y": 180 - }, - "energized=false,facing=south,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_south", - "y": 180 - }, - "energized=false,facing=up,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_up", - "x": -90 - }, - "energized=false,facing=up,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_up", - "x": -90 - }, - "energized=false,facing=west,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_west", - "y": 270 - }, - "energized=false,facing=west,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/dim_powered_west", - "y": 270 - }, - "energized=true,facing=down,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_down", - "x": 90 - }, - "energized=true,facing=down,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_down", - "x": 90 - }, - "energized=true,facing=east,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east", - "y": 90 - }, - "energized=true,facing=east,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_east", - "y": 90 - }, - "energized=true,facing=north,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_north" - }, - "energized=true,facing=north,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_north" - }, - "energized=true,facing=south,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_south", - "y": 180 - }, - "energized=true,facing=south,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_south", - "y": 180 - }, - "energized=true,facing=up,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_up", - "x": -90 - }, - "energized=true,facing=up,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_up", - "x": -90 - }, - "energized=true,facing=west,powered=false": { - "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_west", - "y": 270 - }, - "energized=true,facing=west,powered=true": { - "model": "hexcasting:block/circle/directrix/redstone/lit_powered_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json deleted file mode 100644 index 81efad6fd6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json +++ /dev/null @@ -1,118 +0,0 @@ -{ - "variants": { - "face=ceiling,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 270 - }, - "face=ceiling,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 270 - }, - "face=ceiling,facing=north,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 180 - }, - "face=ceiling,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 180 - }, - "face=ceiling,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180 - }, - "face=ceiling,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180 - }, - "face=ceiling,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "x": 180, - "y": 90 - }, - "face=ceiling,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "x": 180, - "y": 90 - }, - "face=floor,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 90 - }, - "face=floor,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 90 - }, - "face=floor,facing=north,powered=false": { - "model": "hexcasting:block/edified_button" - }, - "face=floor,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed" - }, - "face=floor,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 180 - }, - "face=floor,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 180 - }, - "face=floor,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "y": 270 - }, - "face=floor,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "y": 270 - }, - "face=wall,facing=east,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 90 - }, - "face=wall,facing=east,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 90 - }, - "face=wall,facing=north,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90 - }, - "face=wall,facing=north,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90 - }, - "face=wall,facing=south,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 180 - }, - "face=wall,facing=south,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 180 - }, - "face=wall,facing=west,powered=false": { - "model": "hexcasting:block/edified_button", - "uvlock": true, - "x": 90, - "y": 270 - }, - "face=wall,facing=west,powered=true": { - "model": "hexcasting:block/edified_button_pressed", - "uvlock": true, - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json deleted file mode 100644 index 029d3bd5d2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "variants": { - "facing=east,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left" - }, - "facing=east,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 90 - }, - "facing=east,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right" - }, - "facing=east,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 270 - }, - "facing=east,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left" - }, - "facing=east,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 90 - }, - "facing=east,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right" - }, - "facing=east,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 270 - }, - "facing=north,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 270 - }, - "facing=north,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open" - }, - "facing=north,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 270 - }, - "facing=north,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 180 - }, - "facing=north,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 270 - }, - "facing=north,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open" - }, - "facing=north,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 270 - }, - "facing=north,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 180 - }, - "facing=south,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 90 - }, - "facing=south,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 180 - }, - "facing=south,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 90 - }, - "facing=south,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open" - }, - "facing=south,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 90 - }, - "facing=south,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 180 - }, - "facing=south,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 90 - }, - "facing=south,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open" - }, - "facing=west,half=lower,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_bottom_left", - "y": 180 - }, - "facing=west,half=lower,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_bottom_left_open", - "y": 270 - }, - "facing=west,half=lower,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_bottom_right", - "y": 180 - }, - "facing=west,half=lower,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_bottom_right_open", - "y": 90 - }, - "facing=west,half=upper,hinge=left,open=false": { - "model": "hexcasting:block/edified_door_top_left", - "y": 180 - }, - "facing=west,half=upper,hinge=left,open=true": { - "model": "hexcasting:block/edified_door_top_left_open", - "y": 270 - }, - "facing=west,half=upper,hinge=right,open=false": { - "model": "hexcasting:block/edified_door_top_right", - "y": 180 - }, - "facing=west,half=upper,hinge=right,open=true": { - "model": "hexcasting:block/edified_door_top_right_open", - "y": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json deleted file mode 100644 index 7167013cf7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "hexcasting:block/edified_fence_post" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true - }, - "when": { - "north": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 180 - }, - "when": { - "south": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 270 - }, - "when": { - "west": "true" - } - }, - { - "apply": { - "model": "hexcasting:block/edified_fence_side", - "uvlock": true, - "y": 90 - }, - "when": { - "east": "true" - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json deleted file mode 100644 index f925ddfddd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "variants": { - "facing=east,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 270 - }, - "facing=east,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 270 - }, - "facing=north,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 180 - }, - "facing=north,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 180 - }, - "facing=south,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true - }, - "facing=south,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true - }, - "facing=south,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true - }, - "facing=south,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true - }, - "facing=west,in_wall=false,open=false": { - "model": "hexcasting:block/edified_fence_gate", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=false,open=true": { - "model": "hexcasting:block/edified_fence_gate_open", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=true,open=false": { - "model": "hexcasting:block/edified_fence_gate_wall", - "uvlock": true, - "y": 90 - }, - "facing=west,in_wall=true,open=true": { - "model": "hexcasting:block/edified_fence_gate_wall_open", - "uvlock": true, - "y": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json deleted file mode 100644 index 4cd8fe5d14..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json deleted file mode 100644 index 7526dda321..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_amethyst_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_amethyst" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_amethyst_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json deleted file mode 100644 index ed8e454e7e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_aventurine_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_aventurine" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_aventurine_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json deleted file mode 100644 index 258b377acb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_citrine_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_citrine" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_citrine_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json deleted file mode 100644 index 078f72a986..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_log_purple_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_log_purple" - }, - "axis=z": { - "model": "hexcasting:block/edified_log_purple_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json deleted file mode 100644 index 17d99a7903..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/edified_panel" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json deleted file mode 100644 index a2d790f061..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/edified_planks", - "weight": 3 - }, - { - "model": "hexcasting:block/edified_planks_2", - "weight": 3 - }, - { - "model": "hexcasting:block/edified_planks_3" - } - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json deleted file mode 100644 index 6da4bab988..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "variants": { - "powered=false": { - "model": "hexcasting:block/edified_pressure_plate" - }, - "powered=true": { - "model": "hexcasting:block/edified_pressure_plate_down" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json deleted file mode 100644 index 6a4d4be0d2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "variants": { - "type=bottom": { - "model": "hexcasting:block/edified_slab" - }, - "type=double": { - "model": "hexcasting:block/edified_planks" - }, - "type=top": { - "model": "hexcasting:block/edified_slab_top" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json deleted file mode 100644 index 23ac40ca7e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner" - }, - "facing=east,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=east,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer" - }, - "facing=east,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs" - }, - "facing=east,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=east,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=east,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180 - }, - "facing=north,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=north,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 270 - }, - "facing=north,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 270 - }, - "facing=north,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=north,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180 - }, - "facing=north,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=south,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner" - }, - "facing=south,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer" - }, - "facing=south,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=south,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 90 - }, - "facing=south,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=south,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=south,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 90 - }, - "facing=west,half=bottom,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "y": 180 - }, - "facing=west,half=bottom,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "y": 180 - }, - "facing=west,half=top,shape=inner_left": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=inner_right": { - "model": "hexcasting:block/edified_stairs_inner", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=outer_left": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 180 - }, - "facing=west,half=top,shape=outer_right": { - "model": "hexcasting:block/edified_stairs_outer", - "uvlock": true, - "x": 180, - "y": 270 - }, - "facing=west,half=top,shape=straight": { - "model": "hexcasting:block/edified_stairs", - "uvlock": true, - "x": 180, - "y": 180 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json deleted file mode 100644 index 23d71da006..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/edified_tile" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json deleted file mode 100644 index 0df527ca32..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "variants": { - "facing=east,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 90 - }, - "facing=east,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 90 - }, - "facing=east,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 90 - }, - "facing=east,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 270 - }, - "facing=north,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom" - }, - "facing=north,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open" - }, - "facing=north,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top" - }, - "facing=north,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 180 - }, - "facing=south,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 180 - }, - "facing=south,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 180 - }, - "facing=south,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 180 - }, - "facing=south,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180 - }, - "facing=west,half=bottom,open=false": { - "model": "hexcasting:block/edified_trapdoor_bottom", - "y": 270 - }, - "facing=west,half=bottom,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "y": 270 - }, - "facing=west,half=top,open=false": { - "model": "hexcasting:block/edified_trapdoor_top", - "y": 270 - }, - "facing=west,half=top,open=true": { - "model": "hexcasting:block/edified_trapdoor_open", - "x": 180, - "y": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json deleted file mode 100644 index 1d963101fc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/edified_wood_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/edified_wood" - }, - "axis=z": { - "model": "hexcasting:block/edified_wood_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json deleted file mode 100644 index 057ad53aa6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/empty/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/empty/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/empty/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/empty/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/empty/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/empty/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/empty/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/empty/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/empty/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/empty/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/empty/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/empty/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json deleted file mode 100644 index 0db9af4b2d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/look/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/look/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/look/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/look/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/look/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/look/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/look/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/look/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/look/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/look/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/look/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/look/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json deleted file mode 100644 index 2ad46e21cd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "variants": { - "energized=false,facing=down,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_down", - "x": 90 - }, - "energized=false,facing=down,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_down", - "x": 90 - }, - "energized=false,facing=east,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_east", - "y": 90 - }, - "energized=false,facing=east,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_east", - "y": 90 - }, - "energized=false,facing=north,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_north" - }, - "energized=false,facing=north,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_north" - }, - "energized=false,facing=south,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_south", - "y": 180 - }, - "energized=false,facing=south,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_south", - "y": 180 - }, - "energized=false,facing=up,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_up", - "x": -90 - }, - "energized=false,facing=up,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_up", - "x": -90 - }, - "energized=false,facing=west,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/dim_west", - "y": 270 - }, - "energized=false,facing=west,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/dim_west", - "y": 270 - }, - "energized=true,facing=down,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_down", - "x": 90 - }, - "energized=true,facing=down,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_down", - "x": 90 - }, - "energized=true,facing=east,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_east", - "y": 90 - }, - "energized=true,facing=east,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_east", - "y": 90 - }, - "energized=true,facing=north,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_north" - }, - "energized=true,facing=north,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_north" - }, - "energized=true,facing=south,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_south", - "y": 180 - }, - "energized=true,facing=south,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_south", - "y": 180 - }, - "energized=true,facing=up,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_up", - "x": -90 - }, - "energized=true,facing=up,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_up", - "x": -90 - }, - "energized=true,facing=west,powered=false": { - "model": "hexcasting:block/circle/impetus/redstone/lit_west", - "y": 270 - }, - "energized=true,facing=west,powered=true": { - "model": "hexcasting:block/circle/impetus/redstone/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json deleted file mode 100644 index 32a772b27e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variants": { - "energized=false,facing=down": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_down", - "x": 90 - }, - "energized=false,facing=east": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_east", - "y": 90 - }, - "energized=false,facing=north": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_north" - }, - "energized=false,facing=south": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_south", - "y": 180 - }, - "energized=false,facing=up": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_up", - "x": -90 - }, - "energized=false,facing=west": { - "model": "hexcasting:block/circle/impetus/rightclick/dim_west", - "y": 270 - }, - "energized=true,facing=down": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_down", - "x": 90 - }, - "energized=true,facing=east": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_east", - "y": 90 - }, - "energized=true,facing=north": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_north" - }, - "energized=true,facing=south": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_south", - "y": 180 - }, - "energized=true,facing=up": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_up", - "x": -90 - }, - "energized=true,facing=west": { - "model": "hexcasting:block/circle/impetus/rightclick/lit_west", - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json deleted file mode 100644 index c6bce09cb5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json deleted file mode 100644 index e3d66f7ed3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_bricks" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json deleted file mode 100644 index 72aad9ca91..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_bricks_small" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json deleted file mode 100644 index ddb791a0b1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/quenched_allay_tiles" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json deleted file mode 100644 index 2621fa1b04..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/scroll_paper" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json deleted file mode 100644 index 328e1b46d9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/scroll_paper_lantern" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json deleted file mode 100644 index 8d7a817cc1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "variants": { - "energized=false,face=ceiling,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=ceiling,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=false,face=floor,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=floor,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=false,face=wall,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 90 - }, - "energized=false,face=wall,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90 - }, - "energized=false,face=wall,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 180 - }, - "energized=false,face=wall,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 270 - }, - "energized=true,face=ceiling,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=ceiling,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 180 - }, - "energized=true,face=floor,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=floor,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true - }, - "energized=true,face=wall,facing=east": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 90 - }, - "energized=true,face=wall,facing=north": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90 - }, - "energized=true,face=wall,facing=south": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 180 - }, - "energized=true,face=wall,facing=west": { - "model": "hexcasting:block/slate", - "uvlock": true, - "x": 90, - "y": 270 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json deleted file mode 100644 index e99315f3fa..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_0" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_1" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_2" - } - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json deleted file mode 100644 index e6b5557c2f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "variants": { - "": [ - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_0" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_1" - }, - { - "model": "hexcasting:block/deco/slate_amethyst_bricks_small_2" - } - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json deleted file mode 100644 index 056bc449b3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/slate_amethyst_pillar_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/slate_amethyst_pillar" - }, - "axis=z": { - "model": "hexcasting:block/slate_amethyst_pillar_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json deleted file mode 100644 index 4c5f5d614b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_amethyst_tiles" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json deleted file mode 100644 index 35169aaa2f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/slate_block" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json deleted file mode 100644 index 003a0daafe..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_bricks" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json deleted file mode 100644 index cdd21fd4d3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_bricks_small" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json deleted file mode 100644 index 6d0e098f31..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/slate_pillar_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/slate_pillar" - }, - "axis=z": { - "model": "hexcasting:block/slate_pillar_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json deleted file mode 100644 index 1482ae0827..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hexcasting:block/deco/slate_tiles" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json deleted file mode 100644 index cb09f0122f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/stripped_edified_log_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/stripped_edified_log" - }, - "axis=z": { - "model": "hexcasting:block/stripped_edified_log_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json deleted file mode 100644 index b6b89e3f85..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "axis=x": { - "model": "hexcasting:block/stripped_edified_wood_horizontal", - "x": 90, - "y": 90 - }, - "axis=y": { - "model": "hexcasting:block/stripped_edified_wood" - }, - "axis=z": { - "model": "hexcasting:block/stripped_edified_wood_horizontal", - "x": 90 - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json deleted file mode 100644 index dd5103c118..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "elements": [ - { - "faces": { - "down": { - "cullface": "down", - "texture": "#top_bottom" - }, - "east": { - "cullface": "east", - "texture": "#side" - }, - "north": { - "cullface": "north", - "texture": "#front" - }, - "south": { - "cullface": "south", - "texture": "#side" - }, - "up": { - "cullface": "up", - "texture": "#top_bottom" - }, - "west": { - "cullface": "west", - "texture": "#side" - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - }, - { - "faces": { - "north": { - "cullface": "north", - "texture": "#overlay", - "tintindex": 0 - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - } - ], - "render_type": "minecraft:cutout", - "textures": { - "front": "hexcasting:block/akashic_bookshelf", - "particle": "hexcasting:block/akashic_bookshelf_vert", - "side": "hexcasting:block/akashic_bookshelf_horiz", - "top_bottom": "hexcasting:block/akashic_bookshelf_vert" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json deleted file mode 100644 index 2402c6c597..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json deleted file mode 100644 index 4846d3c2e6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json deleted file mode 100644 index 9352317b12..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json deleted file mode 100644 index 4f98ee656b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf", - "textures": { - "overlay": "hexcasting:block/akashic_bookshelf_overlay_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json deleted file mode 100644 index 9b788e5d7c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/orientable", - "textures": { - "front": "hexcasting:block/akashic_bookshelf", - "side": "hexcasting:block/akashic_bookshelf_horiz", - "top": "hexcasting:block/akashic_bookshelf_vert" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json deleted file mode 100644 index 72a32c3aa8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/akashic_ligature" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json deleted file mode 100644 index 7068b7d62f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "parent": "minecraft:block/block", - "elements": [ - { - "faces": { - "down": { - "cullface": "down", - "texture": "#outer" - }, - "east": { - "cullface": "east", - "texture": "#outer" - }, - "north": { - "cullface": "north", - "texture": "#outer" - }, - "south": { - "cullface": "south", - "texture": "#outer" - }, - "up": { - "cullface": "up", - "texture": "#outer" - }, - "west": { - "cullface": "west", - "texture": "#outer" - } - }, - "from": [ - 0, - 0, - 0 - ], - "to": [ - 16, - 16, - 16 - ] - }, - { - "faces": { - "down": { - "rotation": 180, - "texture": "#inner" - }, - "east": { - "rotation": 180, - "texture": "#inner" - }, - "north": { - "rotation": 180, - "texture": "#inner" - }, - "south": { - "rotation": 180, - "texture": "#inner" - }, - "up": { - "rotation": 180, - "texture": "#inner" - }, - "west": { - "rotation": 180, - "texture": "#inner" - } - }, - "from": [ - 15.75, - 15.75, - 15.75 - ], - "to": [ - 0.25, - 0.25, - 0.25 - ] - } - ], - "render_type": "minecraft:translucent", - "textures": { - "inner": "hexcasting:block/akashic_ligature", - "outer": "hexcasting:block/akashic_record", - "particle": "hexcasting:block/akashic_ligature" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json deleted file mode 100644 index 8fa450ab32..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "hexcasting:block/cube_half_mirrored", - "textures": { - "all": "hexcasting:block/amethyst_dust_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json deleted file mode 100644 index 463617eb53..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/amethyst_edified_leaves" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json deleted file mode 100644 index 5b5b77bbf0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json deleted file mode 100644 index 19fc5366df..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/ancient_scroll_paper_lantern_bottom", - "side": "hexcasting:block/ancient_scroll_paper_lantern_side", - "top": "hexcasting:block/ancient_scroll_paper_lantern_top" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json deleted file mode 100644 index eb1802e0b9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/aventurine_edified_leaves" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json deleted file mode 100644 index c132d88be4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json deleted file mode 100644 index 3477cd9b15..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json deleted file mode 100644 index ccc4319820..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_false", - "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_false", - "west": "hexcasting:block/circle/directrix/boolean/right_false" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json deleted file mode 100644 index 20c3b6cedf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_neither", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_not_true", - "up": "hexcasting:block/circle/directrix/boolean/top_neither", - "west": "hexcasting:block/circle/directrix/boolean/right_neither" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json deleted file mode 100644 index 5c453220fd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/boolean/left_true", - "north": "hexcasting:block/circle/directrix/boolean/front_not_false", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", - "up": "hexcasting:block/circle/directrix/boolean/top_true", - "west": "hexcasting:block/circle/directrix/boolean/right_true" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json deleted file mode 100644 index 8178542bf4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_dim", - "north": "hexcasting:block/circle/directrix/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_dim", - "up": "hexcasting:block/circle/directrix/empty/top_dim", - "west": "hexcasting:block/circle/directrix/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json deleted file mode 100644 index 8da64102c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/empty/left_lit", - "north": "hexcasting:block/circle/directrix/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/empty/back_lit", - "up": "hexcasting:block/circle/directrix/empty/top_lit", - "west": "hexcasting:block/circle/directrix/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json deleted file mode 100644 index adb3eb5128..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json deleted file mode 100644 index c191d8a113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json deleted file mode 100644 index 97d3da2808..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_powered", - "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", - "up": "hexcasting:block/circle/directrix/redstone/top_powered", - "west": "hexcasting:block/circle/directrix/redstone/right_powered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json deleted file mode 100644 index 722076a071..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", - "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", - "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", - "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json deleted file mode 100644 index 479ee7c42b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_dim", - "north": "hexcasting:block/circle/impetus/empty/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/empty/top_dim", - "west": "hexcasting:block/circle/impetus/empty/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json deleted file mode 100644 index 1fb7369cd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/empty/left_lit", - "north": "hexcasting:block/circle/impetus/empty/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/empty/top_lit", - "west": "hexcasting:block/circle/impetus/empty/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json deleted file mode 100644 index 76165760a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_dim", - "north": "hexcasting:block/circle/impetus/look/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/look/top_dim", - "west": "hexcasting:block/circle/impetus/look/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json deleted file mode 100644 index 504eba8930..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/look/left_lit", - "north": "hexcasting:block/circle/impetus/look/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/look/top_lit", - "west": "hexcasting:block/circle/impetus/look/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json deleted file mode 100644 index 71ea895f6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_dim", - "north": "hexcasting:block/circle/impetus/redstone/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/redstone/top_dim", - "west": "hexcasting:block/circle/impetus/redstone/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json deleted file mode 100644 index 12630ca3cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/redstone/left_lit", - "north": "hexcasting:block/circle/impetus/redstone/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/redstone/top_lit", - "west": "hexcasting:block/circle/impetus/redstone/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json deleted file mode 100644 index c5fdbc02b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_dim", - "north": "hexcasting:block/circle/impetus/rightclick/front_dim", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_dim", - "up": "hexcasting:block/circle/impetus/rightclick/top_dim", - "west": "hexcasting:block/circle/impetus/rightclick/right_dim" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json deleted file mode 100644 index 3840e6cb08..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "parent": "minecraft:block/cube", - "textures": { - "down": "hexcasting:block/circle/bottom", - "east": "hexcasting:block/circle/impetus/rightclick/left_lit", - "north": "hexcasting:block/circle/impetus/rightclick/front_lit", - "particle": "hexcasting:block/slate_block", - "south": "hexcasting:block/circle/impetus/back_lit", - "up": "hexcasting:block/circle/impetus/rightclick/top_lit", - "west": "hexcasting:block/circle/impetus/rightclick/right_lit" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json deleted file mode 100644 index 3bef12c734..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/leaves", - "render_type": "minecraft:cutout_mipped", - "textures": { - "all": "hexcasting:block/citrine_edified_leaves" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json deleted file mode 100644 index 9f80c11ee0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "render_type": "minecraft:cutout", - "textures": { - "particle": "minecraft:block/amethyst_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json deleted file mode 100644 index 89c8ec51c2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json deleted file mode 100644 index fc1202b603..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json deleted file mode 100644 index 5ee8934b7a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/deco/amethyst_pillar_bottom", - "side": "hexcasting:block/deco/amethyst_pillar_side", - "top": "hexcasting:block/deco/amethyst_pillar_top" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json deleted file mode 100644 index ab9ffcda39..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/amethyst_tiles" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json deleted file mode 100644 index e0c97c18e6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json deleted file mode 100644 index 61215cda68..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json deleted file mode 100644 index 536da9000b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json deleted file mode 100644 index e45bf99d14..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json deleted file mode 100644 index 2b93f32793..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json deleted file mode 100644 index 91ade20515..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json deleted file mode 100644 index e6b6bd7b22..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json deleted file mode 100644 index 7da0cdfcf8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json deleted file mode 100644 index 3d953c5628..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json deleted file mode 100644 index 6d6150b8d5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json deleted file mode 100644 index 758194fe82..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json deleted file mode 100644 index 5c83c33eb0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json deleted file mode 100644 index 910ec09904..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json deleted file mode 100644 index 4d565a54ae..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json deleted file mode 100644 index a9072bacc0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json deleted file mode 100644 index ad3c92af5d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json deleted file mode 100644 index 1f24ff9a6d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json deleted file mode 100644 index e106adbead..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_bricks_small_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json deleted file mode 100644 index 2c80ba1498..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_amethyst_tiles" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json deleted file mode 100644 index 7fb51bcd7c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json deleted file mode 100644 index 3b262eafff..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json deleted file mode 100644 index d18efee914..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/slate_tiles" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json deleted file mode 100644 index 1c75ef18d3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json deleted file mode 100644 index a026dba7ad..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button_pressed", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json deleted file mode 100644 index 610c3ae5b9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_left", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json deleted file mode 100644 index acf2e96275..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_left_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json deleted file mode 100644 index 2eaa905b77..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_right", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json deleted file mode 100644 index 8a46564f74..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_bottom_right_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json deleted file mode 100644 index 90ea9df1d9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_left", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json deleted file mode 100644 index 5573390683..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_left_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json deleted file mode 100644 index 3a78e863b7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_right", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json deleted file mode 100644 index 26d8c1a200..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/door_top_right_open", - "render_type": "minecraft:cutout", - "textures": { - "bottom": "hexcasting:block/edified_door_lower", - "top": "hexcasting:block/edified_door_upper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json deleted file mode 100644 index c3015ca6d3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json deleted file mode 100644 index ac141eb406..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_open", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json deleted file mode 100644 index ea98b16740..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_wall", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json deleted file mode 100644 index 86d82ca2fc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/template_fence_gate_wall_open", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json deleted file mode 100644 index 281f2acc6d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/fence_post", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json deleted file mode 100644 index 707af51bf2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/fence_side", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json deleted file mode 100644 index 9ba1530b0c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json deleted file mode 100644 index e9833c81a8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json deleted file mode 100644 index fdfc8bd1c1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json deleted file mode 100644 index f9f832f6ee..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_aventurine" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json deleted file mode 100644 index e7ddcd8ed5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_aventurine" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json deleted file mode 100644 index ea1b1d60a5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_citrine" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json deleted file mode 100644 index 2ae70b9aef..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_citrine" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json deleted file mode 100644 index 84e434e72a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json deleted file mode 100644 index 70736370d2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_purple" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json deleted file mode 100644 index 235890db18..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log_top", - "side": "hexcasting:block/deco/edified_log_purple" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json deleted file mode 100644 index 3d790f2af0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_panel" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json deleted file mode 100644 index a722301054..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json deleted file mode 100644 index d0c4c5832b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json deleted file mode 100644 index bad8e6ac05..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_planks_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json deleted file mode 100644 index 5a1b2b5727..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/pressure_plate_up", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json deleted file mode 100644 index eeaa36461c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/pressure_plate_down", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json deleted file mode 100644 index 09d601ec7b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json deleted file mode 100644 index f4d2fcf98c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/slab_top", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json deleted file mode 100644 index 6e9ae9aaae..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json deleted file mode 100644 index 7597f2c8a4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/inner_stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json deleted file mode 100644 index 62d7ab50a9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/outer_stairs", - "textures": { - "bottom": "hexcasting:block/edified_planks", - "side": "hexcasting:block/edified_planks", - "top": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json deleted file mode 100644 index 595adf007a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/edified_tile" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json deleted file mode 100644 index 9c65b36965..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_bottom", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json deleted file mode 100644 index 40217afd9c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_open", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json deleted file mode 100644 index 325f5d4351..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/template_orientable_trapdoor_top", - "render_type": "minecraft:cutout", - "textures": { - "texture": "hexcasting:block/edified_trapdoor" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json deleted file mode 100644 index 22851df079..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/edified_log", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json deleted file mode 100644 index 72149b4bc9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/edified_log", - "side": "hexcasting:block/edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json deleted file mode 100644 index 6c2a8abe6d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json deleted file mode 100644 index 6c2a8abe6d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json deleted file mode 100644 index 441d91052a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json deleted file mode 100644 index a561a358cc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json deleted file mode 100644 index a6fe237391..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/quenched_allay_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json deleted file mode 100644 index e0c97c18e6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json deleted file mode 100644 index 2b93f32793..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json deleted file mode 100644 index 3d953c5628..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/deco/quenched_allay_tiles_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json deleted file mode 100644 index 621451b72c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/scroll_paper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json deleted file mode 100644 index 3c16a2113f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "parent": "minecraft:block/cube_bottom_top", - "textures": { - "bottom": "hexcasting:block/scroll_paper_lantern_bottom", - "side": "hexcasting:block/scroll_paper_lantern_side", - "top": "hexcasting:block/scroll_paper_lantern_top" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json deleted file mode 100644 index 1ec3ef6cf3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/deco/slate_amethyst_pillar_end", - "side": "hexcasting:block/deco/slate_amethyst_pillar_side" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json deleted file mode 100644 index bbd24d1c98..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/deco/slate_amethyst_pillar_end", - "side": "hexcasting:block/deco/slate_amethyst_pillar_side" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json deleted file mode 100644 index 2d8635f925..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/cube_all", - "textures": { - "all": "hexcasting:block/slate_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json deleted file mode 100644 index 697f4daab2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/deco/slate_pillar_end", - "side": "hexcasting:block/deco/slate_pillar_side" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json deleted file mode 100644 index cca16a0c07..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/deco/slate_pillar_end", - "side": "hexcasting:block/deco/slate_pillar_side" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json deleted file mode 100644 index 4aa871e92c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/stripped_edified_log_top", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json deleted file mode 100644 index 0925c23c78..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/stripped_edified_log_top", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json deleted file mode 100644 index 8ef17c0d21..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column", - "textures": { - "end": "hexcasting:block/stripped_edified_log", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json deleted file mode 100644 index 57dcfcc53c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:block/cube_column_horizontal", - "textures": { - "end": "hexcasting:block/stripped_edified_log", - "side": "hexcasting:block/stripped_edified_log" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json deleted file mode 100644 index f6947c4360..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/abacus" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json deleted file mode 100644 index 7c88c3e218..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_bookshelf_empty" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json deleted file mode 100644 index de9a37be49..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_ligature" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json deleted file mode 100644 index 1ea5e0eeb6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/akashic_record" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json deleted file mode 100644 index 5ec0842948..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json deleted file mode 100644 index 1b8fe48dd2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json deleted file mode 100644 index 140659dfab..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/amethyst_dust" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json deleted file mode 100644 index 8cd53fc3ab..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_dust_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json deleted file mode 100644 index d6015ea1f2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json deleted file mode 100644 index 98d9d0c82f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json deleted file mode 100644 index bb1657f9a1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/amethyst_sconce" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json deleted file mode 100644 index b8ecd40c70..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json deleted file mode 100644 index ffc8b5e1cc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/ancient_cypher", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/ancient_cypher_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json deleted file mode 100644 index b38ad18d6d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_ancient_cypher", - "layer1": "hexcasting:item/cad/0_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json deleted file mode 100644 index e8b7b12d55..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json deleted file mode 100644 index 856b0a26d7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_ancient_cypher", - "layer1": "hexcasting:item/cad/1_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json deleted file mode 100644 index 3badfcdd0f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json deleted file mode 100644 index effb9e0198..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_ancient_cypher", - "layer1": "hexcasting:item/cad/2_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json deleted file mode 100644 index 98aabd91e8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json deleted file mode 100644 index 2f19e9feea..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_ancient_cypher", - "layer1": "hexcasting:item/cad/3_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json deleted file mode 100644 index 93318f7bc4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json deleted file mode 100644 index 081cfd65c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_ancient_cypher", - "layer1": "hexcasting:item/cad/4_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json deleted file mode 100644 index 9d247cdd23..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json deleted file mode 100644 index 0ed6accc2a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_ancient_cypher", - "layer1": "hexcasting:item/cad/5_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json deleted file mode 100644 index bf9c9fe505..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json deleted file mode 100644 index 199292d90f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_ancient_cypher", - "layer1": "hexcasting:item/cad/6_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json deleted file mode 100644 index 56e0653080..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_ancient_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json deleted file mode 100644 index b408892c14..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_ancient_cypher", - "layer1": "hexcasting:item/cad/7_ancient_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json deleted file mode 100644 index 810d0e68c5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json deleted file mode 100644 index 39cf0ac289..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json deleted file mode 100644 index d0db0e434f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/artifact", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/artifact_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/artifact_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/artifact_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/artifact_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/artifact_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/artifact_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/artifact_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/artifact_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/artifact_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/artifact_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/artifact_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/artifact_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/artifact_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/artifact_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/artifact_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json deleted file mode 100644 index 1e835b5f74..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_artifact", - "layer1": "hexcasting:item/cad/0_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json deleted file mode 100644 index 870900b6f1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json deleted file mode 100644 index a0f005be3f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_artifact", - "layer1": "hexcasting:item/cad/1_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json deleted file mode 100644 index f2f7fbea97..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json deleted file mode 100644 index cade3931d1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_artifact", - "layer1": "hexcasting:item/cad/2_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json deleted file mode 100644 index 2cb6553e13..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json deleted file mode 100644 index 23c0456285..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_artifact", - "layer1": "hexcasting:item/cad/3_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json deleted file mode 100644 index 216c308d2c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json deleted file mode 100644 index d48959f9d1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_artifact", - "layer1": "hexcasting:item/cad/4_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json deleted file mode 100644 index 4a6f9ef1fb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json deleted file mode 100644 index 1f64bdfda5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_artifact", - "layer1": "hexcasting:item/cad/5_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json deleted file mode 100644 index c66d93ec85..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json deleted file mode 100644 index 3d5f969ddf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_artifact", - "layer1": "hexcasting:item/cad/6_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json deleted file mode 100644 index 1b89f90904..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json deleted file mode 100644 index 0e9043060d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_artifact", - "layer1": "hexcasting:item/cad/7_artifact_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json deleted file mode 100644 index 0ae3302116..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json deleted file mode 100644 index 11be0c6cd1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json +++ /dev/null @@ -1,179 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/phial_small_0", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_small_1", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_small_2", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_small_3", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_small_4", - "predicate": { - "hexcasting:max_media": 0.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_medium_0", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_medium_1", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_medium_2", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_medium_3", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_medium_4", - "predicate": { - "hexcasting:max_media": 1.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_large_0", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_large_1", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_large_2", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_large_3", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_large_4", - "predicate": { - "hexcasting:max_media": 2.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_larger_0", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_larger_1", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_larger_2", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_larger_3", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_larger_4", - "predicate": { - "hexcasting:max_media": 3.0, - "hexcasting:media": 1.0 - } - }, - { - "model": "hexcasting:item/phial_largest_0", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.0 - } - }, - { - "model": "hexcasting:item/phial_largest_1", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.25 - } - }, - { - "model": "hexcasting:item/phial_largest_2", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.5 - } - }, - { - "model": "hexcasting:item/phial_largest_3", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 0.75 - } - }, - { - "model": "hexcasting:item/phial_largest_4", - "predicate": { - "hexcasting:max_media": 4.0, - "hexcasting:media": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json deleted file mode 100644 index 2d147958cb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/charged_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json deleted file mode 100644 index 1fb6398518..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/cherry" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json deleted file mode 100644 index f44ca6c924..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json deleted file mode 100644 index a0bab4ff76..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "minecraft:item/amethyst_shard" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json deleted file mode 100644 index a0bab4ff76..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "minecraft:item/amethyst_shard" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json deleted file mode 100644 index 452b44f612..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/creative_unlocker" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json deleted file mode 100644 index 1a93187096..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/cypher", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/cypher_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/cypher_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/cypher_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/cypher_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/cypher_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/cypher_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/cypher_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/cypher_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/cypher_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/cypher_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/cypher_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/cypher_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/cypher_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/cypher_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/cypher_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json deleted file mode 100644 index 190be7e602..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_cypher", - "layer1": "hexcasting:item/cad/0_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json deleted file mode 100644 index 71a9ff7cc0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json deleted file mode 100644 index abff99cd2f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_cypher", - "layer1": "hexcasting:item/cad/1_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json deleted file mode 100644 index f7b22a7958..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json deleted file mode 100644 index 75143f8a30..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_cypher", - "layer1": "hexcasting:item/cad/2_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json deleted file mode 100644 index da55138305..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json deleted file mode 100644 index cbac2eaf44..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_cypher", - "layer1": "hexcasting:item/cad/3_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json deleted file mode 100644 index 90430a8f8a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json deleted file mode 100644 index e56ed90c0a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_cypher", - "layer1": "hexcasting:item/cad/4_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json deleted file mode 100644 index 138fe59a96..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json deleted file mode 100644 index eeb6161967..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_cypher", - "layer1": "hexcasting:item/cad/5_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json deleted file mode 100644 index bdb310d836..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json deleted file mode 100644 index f9ed07c951..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_cypher", - "layer1": "hexcasting:item/cad/6_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json deleted file mode 100644 index 29e4768e9a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json deleted file mode 100644 index 2de0bb8752..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_cypher", - "layer1": "hexcasting:item/cad/7_cypher_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json deleted file mode 100644 index 0b76dd8f8f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/uuid" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json deleted file mode 100644 index cd729d804c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/boolean/lit_false_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json deleted file mode 100644 index 98be3ef487..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/empty/dim_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json deleted file mode 100644 index e2b947d5a9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json deleted file mode 100644 index 2f55b6c22b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_black" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json deleted file mode 100644 index add421a999..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_blue" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json deleted file mode 100644 index 3be301eb1a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_brown" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json deleted file mode 100644 index c436f3155b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_cyan" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json deleted file mode 100644 index 146f01411c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_gray" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json deleted file mode 100644 index 679f147944..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_green" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json deleted file mode 100644 index 433877e853..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_light_blue" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json deleted file mode 100644 index f5625b67c2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_light_gray" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json deleted file mode 100644 index c1cf22959e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_lime" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json deleted file mode 100644 index 12dcaa82c4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_magenta" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json deleted file mode 100644 index 99679c17f8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_orange" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json deleted file mode 100644 index c138e93ff0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_pink" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json deleted file mode 100644 index d31e3b601c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_purple" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json deleted file mode 100644 index 1fb8f9dd4d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_red" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json deleted file mode 100644 index db4d15eb32..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_white" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json deleted file mode 100644 index 594bb0a09d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/dye_yellow" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json deleted file mode 100644 index e18736c2c8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:block/button_inventory", - "textures": { - "texture": "hexcasting:block/edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json deleted file mode 100644 index 5d6fb8d7ff..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/edified_door" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json deleted file mode 100644 index db31b01904..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_fence_inventory" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json deleted file mode 100644 index 3dfe521195..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_fence_gate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json deleted file mode 100644 index d3c7aeeb06..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json deleted file mode 100644 index 8e80eb679a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_amethyst" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json deleted file mode 100644 index 45007ec40b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_aventurine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json deleted file mode 100644 index 9cae394851..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_citrine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json deleted file mode 100644 index 62c67453ce..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_log_purple" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json deleted file mode 100644 index 355e2765e1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_panel" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json deleted file mode 100644 index 4ed5d45aab..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_planks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json deleted file mode 100644 index 921f7f5bd0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_pressure_plate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json deleted file mode 100644 index 4772af6ed1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_slab" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json deleted file mode 100644 index 90eb4d5123..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_stairs" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json deleted file mode 100644 index 05702f6ed8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_tile" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json deleted file mode 100644 index 8c89f1e881..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_trapdoor_bottom" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json deleted file mode 100644 index c9bfee3a01..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json deleted file mode 100644 index 78328a9dee..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/focus", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_0_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_0_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/focus_1", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_1_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_1_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/focus_2", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_2_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_2_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/focus_3", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_3_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_3_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/focus_4", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_4_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_4_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/focus_5", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_5_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_5_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/focus_6", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_6_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_6_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/focus_7", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/focus_7_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/focus_7_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json deleted file mode 100644 index 508a3497f6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_focus_filled", - "layer1": "hexcasting:item/cad/0_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json deleted file mode 100644 index 0a64292241..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_focus_sealed", - "layer1": "hexcasting:item/cad/0_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json deleted file mode 100644 index 75d8bf400d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json deleted file mode 100644 index bd04934627..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_filled", - "layer1": "hexcasting:item/cad/1_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json deleted file mode 100644 index 001bf05b5a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_focus_sealed", - "layer1": "hexcasting:item/cad/1_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json deleted file mode 100644 index a9ef859978..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json deleted file mode 100644 index 05c2799dfc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_filled", - "layer1": "hexcasting:item/cad/2_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json deleted file mode 100644 index 1c7c230bef..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_focus_sealed", - "layer1": "hexcasting:item/cad/2_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json deleted file mode 100644 index fb366d08b2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json deleted file mode 100644 index 3ad27dfcdf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_filled", - "layer1": "hexcasting:item/cad/3_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json deleted file mode 100644 index 447b7b4198..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_focus_sealed", - "layer1": "hexcasting:item/cad/3_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json deleted file mode 100644 index a3c1bf4eb2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json deleted file mode 100644 index 8b9eb2024f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_filled", - "layer1": "hexcasting:item/cad/4_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json deleted file mode 100644 index 2831235f44..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_focus_sealed", - "layer1": "hexcasting:item/cad/4_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json deleted file mode 100644 index e13b4fa14b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json deleted file mode 100644 index cbac2be535..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_filled", - "layer1": "hexcasting:item/cad/5_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json deleted file mode 100644 index 248801d925..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_focus_sealed", - "layer1": "hexcasting:item/cad/5_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json deleted file mode 100644 index 3bc3f8518f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json deleted file mode 100644 index e950df1223..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_filled", - "layer1": "hexcasting:item/cad/6_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json deleted file mode 100644 index c10282e6b1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_focus_sealed", - "layer1": "hexcasting:item/cad/6_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json deleted file mode 100644 index 8ad8085617..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json deleted file mode 100644 index e6d7b1f28d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_filled", - "layer1": "hexcasting:item/cad/7_focus_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json deleted file mode 100644 index 52d149f4ae..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_focus_sealed", - "layer1": "hexcasting:item/cad/7_focus_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json deleted file mode 100644 index 68e7192da1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/empty/dim_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json deleted file mode 100644 index 73f69303be..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/look/lit_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json deleted file mode 100644 index 523b5343b6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/redstone/lit_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json deleted file mode 100644 index 381232171f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/circle/impetus/rightclick/lit_east" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json deleted file mode 100644 index 22447e1fbd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/jeweler_hammer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json deleted file mode 100644 index 2fdc8f9ce5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "display": { - "head": { - "scale": [ - 0.4, - 0.4, - 0.4 - ], - "translation": [ - -2.5, - 0, - -8 - ] - } - }, - "textures": { - "layer0": "hexcasting:item/lens" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json deleted file mode 100644 index 2b2f9e66fa..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/lore_fragment" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json deleted file mode 100644 index f40e6b8ab1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/old" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json deleted file mode 100644 index a840c0e427..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/patchouli_book" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json deleted file mode 100644 index db3db02acd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json deleted file mode 100644 index bdff2d1022..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json deleted file mode 100644 index 9c09bea449..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json deleted file mode 100644 index 085960c8d8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json deleted file mode 100644 index c39357f8de..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_large_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json deleted file mode 100644 index d5e18bb295..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json deleted file mode 100644 index b19928c486..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json deleted file mode 100644 index ac7ed775cc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json deleted file mode 100644 index b02ce98e95..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json deleted file mode 100644 index 8b313df86f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_larger_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json deleted file mode 100644 index 0e44b418f2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json deleted file mode 100644 index 4f456814f5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json deleted file mode 100644 index ab2bdf4a2b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json deleted file mode 100644 index 10d70acab3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json deleted file mode 100644 index 3c0682e560..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_largest_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json deleted file mode 100644 index cb8b4c0920..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json deleted file mode 100644 index a7f30e8113..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json deleted file mode 100644 index f9f5615cf2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json deleted file mode 100644 index dbfcb528bd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json deleted file mode 100644 index a7501a8e1b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_medium_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json deleted file mode 100644 index fda398e2d9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json deleted file mode 100644 index df784108aa..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json deleted file mode 100644 index f868032c36..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json deleted file mode 100644 index ce4a7999b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json deleted file mode 100644 index bde40839db..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/phial/phial_small_4" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json deleted file mode 100644 index 9c68ff47ff..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_agender" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json deleted file mode 100644 index eb0fabc595..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_aroace" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json deleted file mode 100644 index 7ea60f31e3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_aromantic" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json deleted file mode 100644 index d40b1f2bcb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_asexual" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json deleted file mode 100644 index e1d4b2d77f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_bisexual" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json deleted file mode 100644 index cd0fe06093..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_demiboy" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json deleted file mode 100644 index afda4cabea..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_demigirl" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json deleted file mode 100644 index 353816c8ad..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_gay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json deleted file mode 100644 index fe3641c797..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_genderfluid" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json deleted file mode 100644 index 270eeb011f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_genderqueer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json deleted file mode 100644 index 506facd3de..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_intersex" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json deleted file mode 100644 index 61d110d4cc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_lesbian" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json deleted file mode 100644 index 0212b47a17..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_nonbinary" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json deleted file mode 100644 index 706726a311..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_pansexual" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json deleted file mode 100644 index e6ecd7890e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_plural" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json deleted file mode 100644 index 2655a8e596..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/pride_transgender" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json deleted file mode 100644 index c6ee6b0951..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/quenched_allay_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/quenched_allay_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json deleted file mode 100644 index c3a1b63856..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_bricks_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json deleted file mode 100644 index c0e376a548..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_bricks_small_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json deleted file mode 100644 index 495e817b78..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/quenched_shard_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/quenched_shard_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json deleted file mode 100644 index 5ea5cf33c5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:block/deco/quenched_allay_tiles_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:block/deco/quenched_allay_tiles_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json deleted file mode 100644 index bdd43ddc80..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json deleted file mode 100644 index 4cffa2efe0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json deleted file mode 100644 index e24c8dafbf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json deleted file mode 100644 index 208890fe3d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld", - "textures": { - "layer0": "hexcasting:item/quenched_shard_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json deleted file mode 100644 index 5453ed3ec6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_large", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_large", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json deleted file mode 100644 index 192b9920a6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_large" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json deleted file mode 100644 index eccfe83cb7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_medium" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json deleted file mode 100644 index 5f66417b21..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_ancient_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json deleted file mode 100644 index 7752e9be45..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_medium", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_medium", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json deleted file mode 100644 index ee576746b9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json deleted file mode 100644 index 8fafbd4a86..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json deleted file mode 100644 index 0042b78487..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_large" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json deleted file mode 100644 index a219c7855d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_medium" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json deleted file mode 100644 index 6405ebefb2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/scroll_pristine_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json deleted file mode 100644 index 583fd0f3c8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/scroll_pristine_small", - "predicate": { - "hexcasting:ancient": 0.0 - } - }, - { - "model": "hexcasting:item/scroll_ancient_small", - "predicate": { - "hexcasting:ancient": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json deleted file mode 100644 index 146695e299..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/slate_blank", - "predicate": { - "hexcasting:written": 0.0 - } - }, - { - "model": "hexcasting:item/slate_written", - "predicate": { - "hexcasting:written": 1.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json deleted file mode 100644 index 727a50c807..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_bricks_0" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json deleted file mode 100644 index accf94f2b3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_bricks_small_0" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json deleted file mode 100644 index 749887313c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json deleted file mode 100644 index e20b742c26..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json deleted file mode 100644 index df037ffa4b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/slate_blank" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json deleted file mode 100644 index c40e37f12b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json deleted file mode 100644 index adc880399e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json deleted file mode 100644 index 4d0555b2c6..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json deleted file mode 100644 index 8d6a18fa25..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/slate_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json deleted file mode 100644 index c2bf7616b8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/deco/slate_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json deleted file mode 100644 index a17de30bf5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/slate_written" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json deleted file mode 100644 index 5acb33c2cd..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/spellbook", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_0_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_0_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/spellbook_1", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_1_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_1_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/spellbook_2", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_2_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_2_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/spellbook_3", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_3_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_3_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/spellbook_4", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_4_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_4_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/spellbook_5", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_5_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_5_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/spellbook_6", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_6_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_6_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/spellbook_7", - "predicate": { - "hexcasting:overlay_layer": 0.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/spellbook_7_filled", - "predicate": { - "hexcasting:overlay_layer": 1.0, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/spellbook_7_sealed", - "predicate": { - "hexcasting:overlay_layer": 2.0, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json deleted file mode 100644 index 1727f3854d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_filled", - "layer1": "hexcasting:item/cad/0_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json deleted file mode 100644 index e580e3ceb5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_spellbook_sealed", - "layer1": "hexcasting:item/cad/0_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json deleted file mode 100644 index 6b832d7806..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json deleted file mode 100644 index 3ded667934..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_filled", - "layer1": "hexcasting:item/cad/1_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json deleted file mode 100644 index 91c0ed2bc4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_spellbook_sealed", - "layer1": "hexcasting:item/cad/1_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json deleted file mode 100644 index 2d1355b5e9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json deleted file mode 100644 index 9af15dfbbb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_filled", - "layer1": "hexcasting:item/cad/2_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json deleted file mode 100644 index bd336d2d1a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_spellbook_sealed", - "layer1": "hexcasting:item/cad/2_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json deleted file mode 100644 index e18eaf0d3c..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json deleted file mode 100644 index 6b611c62b0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_filled", - "layer1": "hexcasting:item/cad/3_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json deleted file mode 100644 index 25a265b6d3..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_spellbook_sealed", - "layer1": "hexcasting:item/cad/3_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json deleted file mode 100644 index 38cd5d8fc0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json deleted file mode 100644 index ebccd06cef..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_filled", - "layer1": "hexcasting:item/cad/4_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json deleted file mode 100644 index d281078d45..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_spellbook_sealed", - "layer1": "hexcasting:item/cad/4_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json deleted file mode 100644 index 2f82f7d8a2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json deleted file mode 100644 index 99cc74e732..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_filled", - "layer1": "hexcasting:item/cad/5_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json deleted file mode 100644 index 0a4a822a5b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_spellbook_sealed", - "layer1": "hexcasting:item/cad/5_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json deleted file mode 100644 index 608c5cdd24..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json deleted file mode 100644 index b47cfbac66..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_filled", - "layer1": "hexcasting:item/cad/6_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json deleted file mode 100644 index 2fa15268d2..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_spellbook_sealed", - "layer1": "hexcasting:item/cad/6_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json deleted file mode 100644 index 1e7e436978..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json deleted file mode 100644 index 8438b02ac0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_filled", - "layer1": "hexcasting:item/cad/7_spellbook_filled_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json deleted file mode 100644 index d91512283f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_spellbook_sealed", - "layer1": "hexcasting:item/cad/7_spellbook_sealed_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json deleted file mode 100644 index ea1bd514d1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/acacia" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json deleted file mode 100644 index cb00188989..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/bamboo" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json deleted file mode 100644 index c56b377279..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/birch" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json deleted file mode 100644 index 1fb6398518..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/cherry" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json deleted file mode 100644 index fa68214ae5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/crimson" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json deleted file mode 100644 index ef89b141c8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/dark_oak" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json deleted file mode 100644 index 2ecbbaa4b8..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/edified" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json deleted file mode 100644 index 81fc631e34..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/jungle" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json deleted file mode 100644 index 1d055a8943..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/mangrove" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json deleted file mode 100644 index a2a679a5b5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/mindsplice" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json deleted file mode 100644 index c9a35a19c7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/oak" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json deleted file mode 100644 index 16e5858599..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/staff/quenched_0", - "predicate": { - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_1", - "predicate": { - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_2", - "predicate": { - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/staff/quenched_3", - "predicate": { - "hexcasting:variant": 3.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json deleted file mode 100644 index d34dbbfe48..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_0" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json deleted file mode 100644 index b3b4d49426..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_1" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json deleted file mode 100644 index 9d34fae3ed..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_2" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json deleted file mode 100644 index 61a55746b1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/quenched_3" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json deleted file mode 100644 index aa60185a6a..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/spruce" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json deleted file mode 100644 index 4a157768aa..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/handheld_rod", - "textures": { - "layer0": "hexcasting:item/staff/warped" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json deleted file mode 100644 index 69e448436d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/stripped_edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json deleted file mode 100644 index 45e5b99e81..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hexcasting:block/stripped_edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json deleted file mode 100644 index c5dd346a84..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/sub_sandwich" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json deleted file mode 100644 index 4a9917224b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/thought_knot", - "predicate": { - "hexcasting:written": 0.0 - } - }, - { - "model": "hexcasting:item/thought_knot_written", - "predicate": { - "hexcasting:written": 1.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/thought_knot" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json deleted file mode 100644 index f5b12c99d9..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/thought_knot", - "layer1": "hexcasting:item/thought_knot_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json deleted file mode 100644 index 19102d169b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "overrides": [ - { - "model": "hexcasting:item/trinket", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/trinket_0_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 0.0 - } - }, - { - "model": "hexcasting:item/trinket_1", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/trinket_1_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 1.0 - } - }, - { - "model": "hexcasting:item/trinket_2", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/trinket_2_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 2.0 - } - }, - { - "model": "hexcasting:item/trinket_3", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/trinket_3_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 3.0 - } - }, - { - "model": "hexcasting:item/trinket_4", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/trinket_4_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 4.0 - } - }, - { - "model": "hexcasting:item/trinket_5", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/trinket_5_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 5.0 - } - }, - { - "model": "hexcasting:item/trinket_6", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/trinket_6_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 6.0 - } - }, - { - "model": "hexcasting:item/trinket_7", - "predicate": { - "hexcasting:has_patterns": -0.01, - "hexcasting:variant": 7.0 - } - }, - { - "model": "hexcasting:item/trinket_7_filled", - "predicate": { - "hexcasting:has_patterns": 0.99, - "hexcasting:variant": 7.0 - } - } - ], - "textures": { - "layer0": "hexcasting:item/cad/0_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json deleted file mode 100644 index 77da0e72e5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/0_trinket", - "layer1": "hexcasting:item/cad/0_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json deleted file mode 100644 index 4eb168d7f1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json deleted file mode 100644 index 80a274ce90..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/1_trinket", - "layer1": "hexcasting:item/cad/1_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json deleted file mode 100644 index f38c5e5dc4..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json deleted file mode 100644 index 6c60bb9486..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/2_trinket", - "layer1": "hexcasting:item/cad/2_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json deleted file mode 100644 index 4410e1a4ff..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json deleted file mode 100644 index 4aea4da78e..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/3_trinket", - "layer1": "hexcasting:item/cad/3_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json deleted file mode 100644 index 87903d7d9b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json deleted file mode 100644 index 9b61c263fb..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/4_trinket", - "layer1": "hexcasting:item/cad/4_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json deleted file mode 100644 index 4cc6440a50..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json deleted file mode 100644 index fbc3567288..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/5_trinket", - "layer1": "hexcasting:item/cad/5_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json deleted file mode 100644 index 6cc75f387d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json deleted file mode 100644 index bdd007f345..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/6_trinket", - "layer1": "hexcasting:item/cad/6_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json deleted file mode 100644 index a2f57e04cc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json deleted file mode 100644 index e83c8fa4bc..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/cad/7_trinket", - "layer1": "hexcasting:item/cad/7_trinket_overlay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json deleted file mode 100644 index 0b76dd8f8f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "minecraft:item/generated", - "textures": { - "layer0": "hexcasting:item/colorizer/uuid" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json deleted file mode 100644 index 6a28f12462..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/acacia_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json deleted file mode 100644 index c0f063051f..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/bamboo_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json deleted file mode 100644 index 571e454dd7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/birch_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json deleted file mode 100644 index 9a663a248b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json deleted file mode 100644 index 059589861d..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/crimson_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json deleted file mode 100644 index 31dc19c0e5..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/dark_oak_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json deleted file mode 100644 index 903e47409b..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/edified_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json deleted file mode 100644 index 06b8e032d0..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/jungle_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json deleted file mode 100644 index 0d75f169c1..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/mangrove_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json deleted file mode 100644 index 5c469011ad..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/mindsplice_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json deleted file mode 100644 index 8903a42caf..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/oak_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json deleted file mode 100644 index 3f3562c473..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/spruce_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json deleted file mode 100644 index 62ab1990d7..0000000000 --- a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "overrides": [ - { - "model": "hexcasting:item/warped_staff", - "predicate": { - "hexcasting:funny_level": 0.0 - } - }, - { - "model": "hexcasting:item/cherry_staff", - "predicate": { - "hexcasting:funny_level": 2.0 - } - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/create/tags/block/brittle.json b/Neoforge/src/generated/resources/data/create/tags/block/brittle.json deleted file mode 100644 index fb66be6093..0000000000 --- a/Neoforge/src/generated/resources/data/create/tags/block/brittle.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - { - "id": "#hexcasting:slate", - "required": false - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json b/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json deleted file mode 100644 index d936f71efc..0000000000 --- a/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/gems.json b/Neoforge/src/generated/resources/data/forge/tags/item/gems.json deleted file mode 100644 index 6c55bdef92..0000000000 --- a/Neoforge/src/generated/resources/data/forge/tags/item/gems.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:charged_amethyst" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json deleted file mode 100644 index 158691c260..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "waste_amt": { - "conditions": { - "health_used": { - "min": 89000 - }, - "media_generated": {} - }, - "trigger": "hexcasting:spend_media" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:wasteful_cast.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:glistering_melon_slice" - }, - "title": { - "translate": "advancement.hexcasting:wasteful_cast" - } - }, - "requirements": [ - [ - "waste_amt" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json deleted file mode 100644 index 4664381e91..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "cast_amt": { - "conditions": { - "health_used": {}, - "media_generated": { - "min": 6400000 - } - }, - "trigger": "hexcasting:spend_media" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:big_cast.desc" - }, - "icon": { - "count": 1, - "id": "hexcasting:charged_amethyst" - }, - "title": { - "translate": "advancement.hexcasting:big_cast" - } - }, - "requirements": [ - [ - "cast_amt" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json deleted file mode 100644 index 66694b8389..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "has_creative_unlocker": { - "conditions": { - "items": [ - { - "items": "hexcasting:creative_unlocker" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "announce_to_chat": false, - "background": "minecraft:textures/block/calcite.png", - "description": { - "translate": "advancement.hexcasting:creative_unlocker.desc" - }, - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:creative_unlocker" - }, - "title": { - "translate": "advancement.hexcasting:creative_unlocker" - } - }, - "requirements": [ - [ - "has_creative_unlocker" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json deleted file mode 100644 index 6beb493204..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parent": "hexcasting:opened_eyes", - "criteria": { - "health_used": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:enlightenment.desc" - }, - "frame": "challenge", - "hidden": true, - "icon": { - "count": 1, - "id": "minecraft:music_disc_11" - }, - "title": { - "translate": "advancement.hexcasting:enlightenment" - } - }, - "requirements": [ - [ - "health_used" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json deleted file mode 100644 index 42c9fd8c5f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "criteria": { - "used_item": { - "conditions": { - "item": { - "items": "hexcasting:lore_fragment" - } - }, - "trigger": "minecraft:consume_item" - } - }, - "display": { - "background": "hexcasting:textures/block/slate_block.png", - "description": { - "translate": "advancement.hexcasting:lore.desc" - }, - "frame": "goal", - "icon": { - "count": 1, - "id": "hexcasting:akashic_ligature" - }, - "title": { - "translate": "advancement.hexcasting:lore" - } - }, - "requirements": [ - [ - "used_item" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json deleted file mode 100644 index 314c3fa628..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom1" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json deleted file mode 100644 index 6f3e2b9d20..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom2" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json deleted file mode 100644 index 2147c12792..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom3" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json deleted file mode 100644 index 1374bfcca4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom4" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json deleted file mode 100644 index 06c329a939..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/cardamom5" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json deleted file mode 100644 index 9d2183c268..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/experiment1" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json deleted file mode 100644 index 4ac3cadb4f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/experiment2" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json deleted file mode 100644 index abef5eb653..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parent": "hexcasting:lore", - "criteria": { - "grant": { - "trigger": "minecraft:impossible" - } - }, - "display": { - "description": "", - "hidden": true, - "icon": { - "count": 1, - "id": "hexcasting:lore_fragment" - }, - "title": { - "translate": "advancement.hexcasting:lore/inventory" - } - }, - "requirements": [ - [ - "grant" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json deleted file mode 100644 index 89583b9134..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "hexcasting:y_u_no_cast_angy", - "criteria": { - "health_used": { - "conditions": { - "health_used": {}, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "min": 0.0 - } - }, - "trigger": "hexcasting:overcast" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:opened_eyes.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:ender_eye" - }, - "title": { - "translate": "advancement.hexcasting:opened_eyes" - } - }, - "requirements": [ - [ - "health_used" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json deleted file mode 100644 index d36fd4dc3b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_record" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_record" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json deleted file mode 100644 index 18f9ea380f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:budding_amethyst" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:budding_amethyst" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json deleted file mode 100644 index cc4c924b54..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_boolean" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_boolean" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json deleted file mode 100644 index 8a43f8bac3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix_redstone" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix_redstone" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json deleted file mode 100644 index 939dcb6e4e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_look" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_look" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json deleted file mode 100644 index c4fc49fd24..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_rightclick" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_rightclick" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json deleted file mode 100644 index 31d9085f82..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus_storedplayer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus_storedplayer" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json deleted file mode 100644 index 6dfe849d9f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quench_allay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quench_allay" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json deleted file mode 100644 index e044c18391..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json deleted file mode 100644 index 521d28ac91..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks_from_amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks_from_amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json deleted file mode 100644 index 687815c8ed..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_bricks_small_from_amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_bricks_small_from_amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json deleted file mode 100644 index 96746726ec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_packing" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_packing" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json deleted file mode 100644 index ff10efd290..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_dust_unpacking" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_dust_unpacking" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json deleted file mode 100644 index 9a8101e969..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json deleted file mode 100644 index d3a39ef2b3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "minecraft:amethyst_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json deleted file mode 100644 index ab1194da4a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json deleted file mode 100644 index 31556a4ca8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json deleted file mode 100644 index 1d09e6fdf8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_fence_gate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_fence_gate" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json deleted file mode 100644 index ab66016e10..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_panel" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_panel" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json deleted file mode 100644 index f031431d00..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_logs" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_planks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_planks" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json deleted file mode 100644 index 317bd1fd11..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_slab" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_slab" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json deleted file mode 100644 index 069989ca28..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_stairs" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_stairs" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json deleted file mode 100644 index 5179827061..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_tile" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_tile" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json deleted file mode 100644 index f0aaf4b1fd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_wood" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json deleted file mode 100644 index b0e5ce990b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json deleted file mode 100644 index 0bab79c647..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json deleted file mode 100644 index 513c193a63..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json deleted file mode 100644 index 0dd1f089e7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:quenched_allay" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:quenched_allay_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:quenched_allay_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json deleted file mode 100644 index d676daa7f7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json deleted file mode 100644 index ffd1ea1840..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 241b8a9c92..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json deleted file mode 100644 index 860df61f62..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json deleted file mode 100644 index 9549138cc4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_amethyst_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json deleted file mode 100644 index 770d62ab2b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json deleted file mode 100644 index b2f96c2797..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:slate" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_block_from_slates" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_block_from_slates" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json deleted file mode 100644 index a600188b5d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json deleted file mode 100644 index a631cf0095..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks_from_slate_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks_from_slate_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json deleted file mode 100644 index b525018821..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_bricks_small_from_slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_bricks_small_from_slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json deleted file mode 100644 index f38da3557b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json deleted file mode 100644 index 0df2c49263..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:slate_block" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json deleted file mode 100644 index 164b02fdea..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json deleted file mode 100644 index 02b28d05ac..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json deleted file mode 100644 index 88d4914aa4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json deleted file mode 100644 index 561f7240d9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:amethyst_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/amethyst_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/amethyst_tiles" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json deleted file mode 100644 index b90d2aab65..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json deleted file mode 100644 index 56f48d4c58..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json deleted file mode 100644 index 75aff08481..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:quenched_allay_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/quenched_allay_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/quenched_allay_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json deleted file mode 100644 index 57d1f132b6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_bricks" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_bricks" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json deleted file mode 100644 index fa9f1894b9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_bricks_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_bricks_small" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json deleted file mode 100644 index c7bd943b17..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_pillar" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_pillar" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json deleted file mode 100644 index 98390070fc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "tag": "hexcasting:slate_blocks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stonecutting/slate_tiles" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stonecutting/slate_tiles" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json deleted file mode 100644 index 4d048fc250..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:stripped_edified_log" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:stripped_edified_wood" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:stripped_edified_wood" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json deleted file mode 100644 index 6ae4bdbbb6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper_lantern" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ageing_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ageing_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json deleted file mode 100644 index 91debb7ca5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:amethyst_sconce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:amethyst_sconce" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json deleted file mode 100644 index f36c1abfc2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:ancient_scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json deleted file mode 100644 index 1bff0c5ff6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json deleted file mode 100644 index 2dc4651527..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_medium" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_medium" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json deleted file mode 100644 index 63884d313e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:scroll_paper" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_paper_lantern" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_paper_lantern" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json deleted file mode 100644 index 2e68c56849..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:scroll_small" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:scroll_small" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json deleted file mode 100644 index 551899a3a3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:slate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:slate" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json deleted file mode 100644 index bb64c267e5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:sub_sandwich" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:sub_sandwich" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json deleted file mode 100644 index e29d71dae5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": [ - "hexcasting:amethyst_dust" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:ancient_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_item", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:ancient_colorizer" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json deleted file mode 100644 index b032476ae7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/charged" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/charged" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json deleted file mode 100644 index 299d8a4550..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/dust" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/dust" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json deleted file mode 100644 index d9f9dfbb25..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:quenched_allay_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:decompose_quenched_shard/shard" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:decompose_quenched_shard/shard" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json deleted file mode 100644 index e04ea0f7b0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:default_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:default_colorizer" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json deleted file mode 100644 index 486da412cd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_black" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_black" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json deleted file mode 100644 index c23b00add5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_blue" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json deleted file mode 100644 index daf49d8674..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_brown" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_brown" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json deleted file mode 100644 index bc159a4f91..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_cyan" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_cyan" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json deleted file mode 100644 index 959c3b871a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_gray" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json deleted file mode 100644 index ae496bdb93..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_green" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_green" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json deleted file mode 100644 index 9e660ad5de..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_blue" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_blue" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json deleted file mode 100644 index b2b51d665b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_light_gray" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_light_gray" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json deleted file mode 100644 index b21321754b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_lime" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_lime" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json deleted file mode 100644 index 38097fe636..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_magenta" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_magenta" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json deleted file mode 100644 index a5e2054cd0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_orange" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_orange" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json deleted file mode 100644 index 868366c0a4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_pink" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_pink" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json deleted file mode 100644 index b9d4282404..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_purple" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_purple" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json deleted file mode 100644 index 515062d384..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_red" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_red" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json deleted file mode 100644 index 3fbaf1ba20..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_white" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_white" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json deleted file mode 100644 index e707bc9937..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:dye_colorizer_yellow" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:dye_colorizer_yellow" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json deleted file mode 100644 index e07c954cd3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_agender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_agender" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json deleted file mode 100644 index 8413c66774..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aroace" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aroace" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json deleted file mode 100644 index 37604e5939..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_aromantic" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_aromantic" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json deleted file mode 100644 index 74df9afba7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_asexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_asexual" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json deleted file mode 100644 index a3e18ad420..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_bisexual" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_bisexual" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json deleted file mode 100644 index e131fc73f1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demiboy" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demiboy" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json deleted file mode 100644 index a164b59ce6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_demigirl" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_demigirl" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json deleted file mode 100644 index 59c4f8fdeb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_gay" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_gay" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json deleted file mode 100644 index 5c3233fa98..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderfluid" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderfluid" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json deleted file mode 100644 index fd6f1355ef..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_genderqueer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_genderqueer" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json deleted file mode 100644 index 091329fe3f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_intersex" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_intersex" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json deleted file mode 100644 index 3d4dec1d10..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_lesbian" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_lesbian" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json deleted file mode 100644 index 83c4964af9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_nonbinary" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_nonbinary" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json deleted file mode 100644 index 89512b05e1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_plural" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_plural" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json deleted file mode 100644 index 70dced6396..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:pride_colorizer_transgender" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:pride_colorizer_transgender" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json deleted file mode 100644 index fbcdbfebf4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:amethyst_dust" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:uuid_colorizer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:uuid_colorizer" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json deleted file mode 100644 index 44a4110650..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_bookshelf" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_bookshelf" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json deleted file mode 100644 index b2a6f52851..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:akashic_ligature" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:akashic_ligature" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json deleted file mode 100644 index e00a4fdf00..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:directrix/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:directrix/empty" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json deleted file mode 100644 index b6cd73817c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_button" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_button" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json deleted file mode 100644 index 72dce77364..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_door" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_door" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json deleted file mode 100644 index f207372eeb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_pressure_plate" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_pressure_plate" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json deleted file mode 100644 index be0fadb15b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:edified_planks" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:edified_trapdoor" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:edified_trapdoor" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json deleted file mode 100644 index 0b4aa3256c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "enlightenment": { - "conditions": { - "health_used": { - "min": 0.8 - }, - "media_generated": {}, - "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { - "max": 1.0, - "min": 2.2250738585072014E-308 - } - }, - "trigger": "hexcasting:overcast" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:impetus/empty" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "enlightenment" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:impetus/empty" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json deleted file mode 100644 index b1cb841b3e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:abacus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:abacus" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json deleted file mode 100644 index 221cf418c3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:artifact" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:artifact" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json deleted file mode 100644 index 5489ea0467..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:cypher" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:cypher" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json deleted file mode 100644 index 4e19de9e5e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json deleted file mode 100644 index f67d8502aa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:focus_rotated" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:focus_rotated" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json deleted file mode 100644 index 6a24d2b333..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "minecraft:amethyst_shard" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:jeweler_hammer" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:jeweler_hammer" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json deleted file mode 100644 index 3411cb2187..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:lens" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:lens" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json deleted file mode 100644 index ef5a492652..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_chorus": { - "conditions": { - "items": [ - { - "items": "minecraft:chorus_fruit" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_focus": { - "conditions": { - "items": [ - { - "items": "hexcasting:focus" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:spellbook" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_focus", - "has_chorus" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:spellbook" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json deleted file mode 100644 index c1e018b4ec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/acacia" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/acacia" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json deleted file mode 100644 index 19094ad2fe..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/bamboo" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/bamboo" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json deleted file mode 100644 index ca6c180cfa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/birch" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/birch" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json deleted file mode 100644 index 38107a9b52..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/cherry" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/cherry" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json deleted file mode 100644 index da68b592c5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/crimson" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/crimson" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json deleted file mode 100644 index da9937e87d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/dark_oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/dark_oak" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json deleted file mode 100644 index 99d19ed3bf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/edified" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/edified" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json deleted file mode 100644 index 80fe7c43f6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/jungle" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/jungle" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json deleted file mode 100644 index 0064814593..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mangrove" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mangrove" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json deleted file mode 100644 index adb60836c1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/mindsplice" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/mindsplice" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json deleted file mode 100644 index d11084b78d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/oak" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/oak" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json deleted file mode 100644 index 1ce63b78e3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/quenched" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/quenched" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json deleted file mode 100644 index cbad54cf88..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/spruce" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/spruce" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json deleted file mode 100644 index ffff5199c6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "hexcasting:charged_amethyst" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:staff/warped" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:staff/warped" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json deleted file mode 100644 index f50c1673fa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:thought_knot" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:thought_knot" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json deleted file mode 100644 index 17c0d69b1f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "#hexcasting:staves" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hexcasting:trinket" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "hexcasting:trinket" - ] - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json deleted file mode 100644 index 1b2763aed8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "criteria": { - "has_charged_amethyst": { - "conditions": { - "items": [ - { - "items": "#hexcasting:grants_root_advancement" - } - ] - }, - "trigger": "minecraft:inventory_changed" - } - }, - "display": { - "background": "minecraft:textures/block/calcite.png", - "description": { - "translate": "advancement.hexcasting:root.desc" - }, - "hidden": true, - "icon": { - "count": 1, - "id": "minecraft:budding_amethyst" - }, - "title": { - "translate": "advancement.hexcasting:root" - } - }, - "requirements": [ - [ - "has_charged_amethyst" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json deleted file mode 100644 index 00a5641e4d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parent": "hexcasting:root", - "criteria": { - "did_the_thing": { - "trigger": "hexcasting:fail_to_cast_great_spell" - } - }, - "display": { - "description": { - "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" - }, - "icon": { - "count": 1, - "id": "minecraft:blaze_powder" - }, - "title": { - "translate": "advancement.hexcasting:y_u_no_cast_angy" - } - }, - "requirements": [ - [ - "did_the_thing" - ] - ], - "sends_telemetry_event": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json b/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json deleted file mode 100644 index 012582c4b2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "exhaustion": 0.0, - "message_id": "hexcasting.overcast", - "scaling": "when_caused_by_living_non_player" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json deleted file mode 100644 index 70af09ea61..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:amethyst_cluster", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:blocks/amethyst_cluster" - } - ], - "shardDelta": -0.5 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json deleted file mode 100644 index e5586b3adb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 1.0, - "conditions": [ - { - "condition": "forge:loot_table_id", - "loot_table_id": "hexcasting:random_cypher" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index 2cde006e3e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json deleted file mode 100644 index 79ede35c14..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/ancient_city" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json deleted file mode 100644 index f51d2dabf0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/desert_pyramid" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json deleted file mode 100644 index 78250990ed..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/jungle_temple" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json deleted file mode 100644 index b9e7041dbc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/nether_bridge" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json deleted file mode 100644 index 5cb215e05e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json deleted file mode 100644 index 6dfe6d03d3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_cyphers", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_corridor" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index c636a2f73a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json deleted file mode 100644 index 215f625f7d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/pillager_outpost" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json deleted file mode 100644 index ad1b0666d8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json deleted file mode 100644 index f55d8f4cc0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_library" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json deleted file mode 100644 index 3aaf4b8498..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_desert_house" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json deleted file mode 100644 index 93d27d6661..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_plains_house" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json deleted file mode 100644 index bb224944b7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_savanna_house" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json deleted file mode 100644 index ec4f567a6e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_snowy_house" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json deleted file mode 100644 index d2132c79bf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_taiga_house" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json deleted file mode 100644 index be9d6b6d12..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_lore", - "chance": 0.4, - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/woodland_mansion" - } - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json deleted file mode 100644 index 742f92dfd9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "forge:loot_table_id", - "loot_table_id": "hexcasting:random_scroll" - } - ], - "countRange": -1 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json deleted file mode 100644 index 27d1e1ba46..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/abandoned_mineshaft" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json deleted file mode 100644 index d4d94d6652..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/ancient_city" - } - ], - "countRange": 4 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json deleted file mode 100644 index 17372d9896..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/bastion_other" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json deleted file mode 100644 index ff8851c233..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/bastion_treasure" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json deleted file mode 100644 index b91f49fb8a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/desert_pyramid" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json deleted file mode 100644 index f5371dd519..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/end_city_treasure" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json deleted file mode 100644 index c1bf948ade..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/jungle_temple" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json deleted file mode 100644 index 68725eddce..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/nether_bridge" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json deleted file mode 100644 index b06f4d95a6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/pillager_outpost" - } - ], - "countRange": 4 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json deleted file mode 100644 index 3c7b528cda..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/shipwreck_map" - } - ], - "countRange": 3 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json deleted file mode 100644 index 141eebbe09..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/simple_dungeon" - } - ], - "countRange": 1 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json deleted file mode 100644 index f08c93cb45..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/stronghold_library" - } - ], - "countRange": 5 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json deleted file mode 100644 index a59db105dd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/village/village_cartographer" - } - ], - "countRange": 2 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json deleted file mode 100644 index cc97ecc7c2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "hexcasting:inject_scrolls", - "conditions": [ - { - "condition": "neoforge:loot_table_id", - "loot_table_id": "minecraft:chests/woodland_mansion" - } - ], - "countRange": 5 -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json deleted file mode 100644 index 78a36f62ec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_bookshelf" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_bookshelf" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json deleted file mode 100644 index 02be275bc1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_ligature" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_ligature" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json deleted file mode 100644 index 5c93f81681..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:akashic_record" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/akashic_record" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json deleted file mode 100644 index 4c60a77364..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json deleted file mode 100644 index 3d39f82987..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json deleted file mode 100644 index 7c054a0aab..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_dust_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json deleted file mode 100644 index 911c281497..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json deleted file mode 100644 index 2eeb112461..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json deleted file mode 100644 index e2c38fe09e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_sconce" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_sconce" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json deleted file mode 100644 index 13010296ca..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json deleted file mode 100644 index 2bb2887920..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json deleted file mode 100644 index f2ea006a03..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:ancient_scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json deleted file mode 100644 index d2bfc7c956..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:aventurine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json deleted file mode 100644 index 88f319d753..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:any_of", - "terms": [ - { - "ability": "shears_dig", - "condition": "neoforge:can_item_perform_ability" - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ] - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:citrine_edified_leaves" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/citrine_edified_leaves" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json deleted file mode 100644 index 7510be752b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/boolean" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/boolean" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json deleted file mode 100644 index 056282de33..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/empty" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json deleted file mode 100644 index b130eb19de..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:directrix/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/directrix/redstone" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json deleted file mode 100644 index a24172124e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_button" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_button" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json deleted file mode 100644 index 942a65484f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "block": "hexcasting:edified_door", - "condition": "minecraft:block_state_property", - "properties": { - "half": "lower" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_door" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_door" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json deleted file mode 100644 index f45eea22be..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json deleted file mode 100644 index 01cbf2a5e1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_fence_gate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_fence_gate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json deleted file mode 100644 index 396a3fcb45..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json deleted file mode 100644 index d6c0759bfa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_amethyst" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_amethyst" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json deleted file mode 100644 index 31892f2177..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_aventurine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_aventurine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json deleted file mode 100644 index 21ac1cd0fb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_citrine" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_citrine" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json deleted file mode 100644 index f9c2c33343..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_log_purple" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_log_purple" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json deleted file mode 100644 index 83cb1f1b59..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_panel" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_panel" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json deleted file mode 100644 index 5f1b5f7280..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_planks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_planks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json deleted file mode 100644 index d733b30a49..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_pressure_plate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_pressure_plate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json deleted file mode 100644 index 0bdc00f6b3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_slab" - } - ], - "functions": [ - { - "add": false, - "conditions": [ - { - "block": "hexcasting:edified_slab", - "condition": "minecraft:block_state_property", - "properties": { - "type": "double" - } - } - ], - "count": 2.0, - "function": "minecraft:set_count" - }, - { - "function": "minecraft:explosion_decay" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_slab" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json deleted file mode 100644 index 7cb6566434..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_stairs" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_stairs" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json deleted file mode 100644 index dbc6bd1426..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_tile" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_tile" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json deleted file mode 100644 index f76ea0437f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_trapdoor" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_trapdoor" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json deleted file mode 100644 index 2e1faee977..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json deleted file mode 100644 index 67fe1185ac..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/empty" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/empty" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json deleted file mode 100644 index 87f6f0ef09..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/look" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/look" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json deleted file mode 100644 index 1635ee4207..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/redstone" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/redstone" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json deleted file mode 100644 index 37f1e9df10..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:impetus/rightclick" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/impetus/rightclick" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json deleted file mode 100644 index 09fe8b6fd3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:alternatives", - "children": [ - { - "type": "minecraft:item", - "conditions": [ - { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - ], - "name": "hexcasting:quenched_allay" - }, - { - "type": "minecraft:item", - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 2.0 - }, - "function": "minecraft:set_count" - }, - { - "add": true, - "conditions": [ - { - "chances": [ - 0.25, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "name": "hexcasting:quenched_allay_shard" - } - ] - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json deleted file mode 100644 index eb1a87b224..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json deleted file mode 100644 index 879089b6d4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json deleted file mode 100644 index 0c81157382..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:quenched_allay_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/quenched_allay_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json deleted file mode 100644 index 8c3d628108..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json deleted file mode 100644 index ccea471c66..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:scroll_paper_lantern" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/scroll_paper_lantern" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json deleted file mode 100644 index eeb8f5c955..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "functions": [ - { - "function": "minecraft:copy_components", - "include": [ - "hexcasting:pattern" - ], - "source": "block_entity" - } - ], - "name": "hexcasting:slate" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json deleted file mode 100644 index f6d9ea8d1a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json deleted file mode 100644 index 6f7cfb5825..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json deleted file mode 100644 index 96dd26f7fb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json deleted file mode 100644 index e91ebad3ce..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_amethyst_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json deleted file mode 100644 index d136fe7460..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_block" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_block" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json deleted file mode 100644 index d42593f8d5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json deleted file mode 100644 index f77a608dec..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_bricks_small" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json deleted file mode 100644 index 060b60ebf9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_pillar" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json deleted file mode 100644 index 81cda1a13a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:slate_tiles" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/slate_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json deleted file mode 100644 index 7dab40f3a1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_log" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_log" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json deleted file mode 100644 index 60b009f032..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:stripped_edified_wood" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:blocks/stripped_edified_wood" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json deleted file mode 100644 index e87bc89af2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json +++ /dev/null @@ -1,211 +0,0 @@ -{ - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 4.0, - "min": 1.0 - }, - "function": "minecraft:set_count" - }, - { - "enchantment": "minecraft:fortune", - "formula": "minecraft:ore_drops", - "function": "minecraft:apply_bonus" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:amethyst_dust" - } - ], - "functions": [ - { - "add": false, - "count": { - "type": "minecraft:uniform", - "max": 2.0, - "min": 0.0 - }, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - }, - { - "chances": [ - 0.25, - 0.35, - 0.5, - 0.75, - 1.0 - ], - "condition": "minecraft:table_bonus", - "enchantment": "minecraft:fortune" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - }, - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "predicates": { - "minecraft:enchantments": [ - { - "enchantments": "minecraft:silk_touch", - "levels": { - "min": 1 - } - } - ] - } - } - } - }, - { - "condition": "minecraft:inverted", - "term": { - "condition": "minecraft:match_tool", - "predicate": { - "items": "#minecraft:cluster_max_harvestables" - } - } - }, - { - "chance": 0.125, - "condition": "minecraft:random_chance" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hexcasting:charged_amethyst" - } - ], - "functions": [ - { - "add": false, - "count": 1.0, - "function": "minecraft:set_count" - } - ], - "rolls": 1.0 - } - ], - "random_sequence": "hexcasting:inject/amethyst_cluster" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json deleted file mode 100644 index 76d393b033..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "minecraft:planks" - } - }, - "pattern": [ - "WAW", - "SAS", - "WAW" - ], - "result": { - "count": 1, - "id": "hexcasting:abacus" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json deleted file mode 100644 index 54de4e69be..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "tag": "c:dyes/brown" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - }, - { - "item": "hexcasting:scroll_paper_lantern" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json deleted file mode 100644 index 055ac48308..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "C": { - "item": "minecraft:book" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "CCC", - "LPL" - ], - "result": { - "count": 1, - "id": "hexcasting:akashic_bookshelf" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json deleted file mode 100644 index bbcc3f83e7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "1": { - "item": "hexcasting:amethyst_dust" - }, - "2": { - "item": "minecraft:amethyst_shard" - }, - "3": { - "item": "hexcasting:charged_amethyst" - }, - "L": { - "tag": "hexcasting:edified_logs" - }, - "P": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "LPL", - "123", - "LPL" - ], - "result": { - "count": 4, - "id": "hexcasting:akashic_ligature" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json deleted file mode 100644 index 84cd942bb3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:amethyst_block" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json deleted file mode 100644 index 71f55ac6dd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_bricks_small" - } - ], - "result": { - "item": "hexcasting:amethyst_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json deleted file mode 100644 index d41d6cbbf7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_bricks" - } - ], - "result": { - "item": "hexcasting:amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json deleted file mode 100644 index 1da337229f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "X": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "XX", - "XX" - ], - "result": { - "count": 1, - "id": "hexcasting:amethyst_dust_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json deleted file mode 100644 index db42cb3711..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust_block" - } - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json deleted file mode 100644 index bc5387bff3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "minecraft:amethyst_block" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 2, - "item": "hexcasting:amethyst_pillar" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json deleted file mode 100644 index 1ece2856f0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "tag": "c:ingots/copper" - }, - "T": { - "item": "hexcasting:charged_amethyst" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 4, - "id": "hexcasting:amethyst_sconce" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json deleted file mode 100644 index 674715a62d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:amethyst_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:amethyst_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json deleted file mode 100644 index 41d540f77e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:copper_ingot" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "item": "hexcasting:ancient_colorizer" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json deleted file mode 100644 index 33db9b82c9..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "c:dyes/brown" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - }, - { - "item": "hexcasting:scroll_paper" - } - ], - "result": { - "count": 8, - "id": "hexcasting:ancient_scroll_paper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json deleted file mode 100644 index d99d9ba91b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:ancient_scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:ancient_scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json deleted file mode 100644 index a03e30a2a8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "D": { - "tag": "minecraft:creeper_drop_music_discs" - }, - "F": { - "tag": "c:ingots/gold" - } - }, - "pattern": [ - " F ", - "FAF", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:artifact" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json deleted file mode 100644 index 750ad2dcfe..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:akashic_ligature" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 5, - "profession": "minecraft:librarian" - }, - "result": { - "Name": "hexcasting:akashic_record" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json deleted file mode 100644 index 0532b2e5ed..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 3 - }, - "result": { - "Name": "minecraft:budding_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json deleted file mode 100644 index 5e97ada05f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:shepherd" - }, - "result": { - "Name": "hexcasting:directrix/boolean", - "Properties": { - "energized": "false", - "facing": "north", - "state": "neither" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json deleted file mode 100644 index afb314d043..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:directrix/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 1, - "profession": "minecraft:mason" - }, - "result": { - "Name": "hexcasting:directrix/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "false" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json deleted file mode 100644 index 7d77364f78..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:fletcher" - }, - "result": { - "Name": "hexcasting:impetus/look", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json deleted file mode 100644 index 02fbae2538..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:toolsmith" - }, - "result": { - "Name": "hexcasting:impetus/rightclick", - "Properties": { - "energized": "false", - "facing": "north" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json deleted file mode 100644 index f79dca1d11..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "hexcasting:impetus/empty" - }, - "cost": 1000000, - "entityIn": { - "type": "hexcasting:villager", - "minLevel": 2, - "profession": "minecraft:cleric" - }, - "result": { - "Name": "hexcasting:impetus/redstone", - "Properties": { - "energized": "false", - "facing": "north", - "powered": "true" - } - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json deleted file mode 100644 index 076b4e0745..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "hexcasting:brainsweep", - "blockIn": { - "type": "hexcasting:block", - "block": "minecraft:amethyst_block" - }, - "cost": 100000, - "entityIn": { - "type": "hexcasting:entity_type", - "entityType": "minecraft:allay" - }, - "result": { - "Name": "hexcasting:quenched_allay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json deleted file mode 100644 index 80e1837536..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "tag": "c:ingots/copper" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:cypher" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json deleted file mode 100644 index 4d9e9902e8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:charged_amethyst" - } - ], - "result": { - "count": 4, - "id": "hexcasting:charged_amethyst" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json deleted file mode 100644 index 5023760773..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "hexcasting:amethyst_dust" - } - ], - "result": { - "count": 31, - "id": "hexcasting:amethyst_dust" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json deleted file mode 100644 index e441d9bf5f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_shard" - }, - { - "item": "minecraft:amethyst_shard" - } - ], - "result": { - "count": 7, - "id": "minecraft:amethyst_shard" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json deleted file mode 100644 index 3f95041537..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:default_colorizer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json deleted file mode 100644 index 986fa97d99..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "C": { - "item": "minecraft:comparator" - }, - "O": { - "item": "minecraft:observer" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "CSS", - "OAO", - "SSC" - ], - "result": { - "count": 1, - "id": "hexcasting:directrix/empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json deleted file mode 100644 index 43dcd86862..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:black_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_black" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json deleted file mode 100644 index b9cd3b99c3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_blue" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json deleted file mode 100644 index f02b87049c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:brown_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_brown" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json deleted file mode 100644 index 93380132c6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:cyan_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_cyan" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json deleted file mode 100644 index c803427d5a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_gray" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json deleted file mode 100644 index e592b36cca..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:green_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_green" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json deleted file mode 100644 index d8eb9b5986..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_blue_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_blue" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json deleted file mode 100644 index e6efc2af9a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:light_gray_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_light_gray" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json deleted file mode 100644 index 645db81176..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:lime_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_lime" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json deleted file mode 100644 index 9476c0a098..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:magenta_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_magenta" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json deleted file mode 100644 index f6f815b95f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:orange_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_orange" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json deleted file mode 100644 index 065db19c23..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:pink_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_pink" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json deleted file mode 100644 index 85dab6119e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:purple_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_purple" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json deleted file mode 100644 index 8acba0fc1a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:red_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_red" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json deleted file mode 100644 index d76ee9ba69..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:white_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_white" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json deleted file mode 100644 index 35ffbdd8df..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:yellow_dye" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:dye_colorizer_yellow" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json deleted file mode 100644 index 28edc09f6d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_focus", - "category": "misc" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json deleted file mode 100644 index 5bf703566d..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "type": "hexcasting:seal_spellbook", - "category": "misc" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json deleted file mode 100644 index 10ad25b4aa..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "redstone", - "ingredients": [ - { - "tag": "hexcasting:edified_planks" - } - ], - "result": { - "count": 1, - "id": "hexcasting:edified_button" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json deleted file mode 100644 index 6ff2941615..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW", - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_door" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json deleted file mode 100644 index f1a7c7ec45..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WSW", - "WSW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_fence" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json deleted file mode 100644 index a38d45ca38..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "SWS", - "SWS" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_fence_gate" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json deleted file mode 100644 index 0baf420f31..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "tag": "hexcasting:edified_planks" - }, - "D": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "DCD", - "C C", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:edified_panel" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json deleted file mode 100644 index 7ea641db71..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "tag": "hexcasting:edified_logs" - } - ], - "result": { - "count": 4, - "id": "hexcasting:edified_planks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json deleted file mode 100644 index fb80df82d1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW" - ], - "result": { - "count": 1, - "id": "hexcasting:edified_pressure_plate" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json deleted file mode 100644 index efda8df52a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_slab" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json deleted file mode 100644 index ca2e03f9c3..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "W ", - "WW ", - "WWW" - ], - "result": { - "count": 4, - "id": "hexcasting:edified_stairs" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json deleted file mode 100644 index bfca8c3437..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WW ", - "W W", - " WW" - ], - "result": { - "count": 6, - "id": "hexcasting:edified_tile" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json deleted file mode 100644 index 89928fcc73..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "W": { - "tag": "hexcasting:edified_planks" - } - }, - "pattern": [ - "WWW", - "WWW" - ], - "result": { - "count": 2, - "id": "hexcasting:edified_trapdoor" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json deleted file mode 100644 index 4e95e0bdc6..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:edified_wood" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json deleted file mode 100644 index ff88244378..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": { - "tag": "c:dusts/glowstone" - }, - "L": { - "tag": "c:leathers" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GLG", - "PAP", - "GLG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json deleted file mode 100644 index 62aba7f62e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "G": { - "tag": "c:dusts/glowstone" - }, - "L": { - "tag": "c:leathers" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "GPG", - "LAL", - "GPG" - ], - "result": { - "count": 1, - "id": "hexcasting:focus" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json deleted file mode 100644 index b5d3b9fd5c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "redstone", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:iron_bars" - }, - "P": { - "item": "minecraft:purpur_block" - }, - "S": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "PSS", - "BAB", - "SSP" - ], - "result": { - "count": 1, - "id": "hexcasting:impetus/empty" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json deleted file mode 100644 index fef55bcb4b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "I": { - "tag": "c:ingots/iron" - }, - "N": { - "tag": "c:nuggets/iron" - }, - "S": [ - { - "item": "minecraft:stick" - }, - { - "tag": "forge:rods/wooden" - } - ] - }, - "pattern": [ - "IAN", - " S ", - " S " - ], - "result": { - "count": 1, - "id": "hexcasting:jeweler_hammer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json deleted file mode 100644 index d7e33ac36b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "item": "minecraft:glass" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:lens" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json deleted file mode 100644 index d5401c0952..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_agender" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json deleted file mode 100644 index 25c32f412c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat_seeds" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aroace" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json deleted file mode 100644 index ab923e9b61..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:arrow" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_aromantic" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json deleted file mode 100644 index c41a3223de..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:bread" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_asexual" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json deleted file mode 100644 index 157dff5b64..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:wheat" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_bisexual" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json deleted file mode 100644 index c79d6fd805..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_iron" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demiboy" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json deleted file mode 100644 index 4a87fb83dd..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:raw_copper" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_demigirl" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json deleted file mode 100644 index 3922bf5fa1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:stone_brick_wall" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_gay" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json deleted file mode 100644 index 788be0d074..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:water_bucket" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderfluid" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json deleted file mode 100644 index db56478852..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:glass_bottle" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_genderqueer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json deleted file mode 100644 index 0cf8605f6e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:azalea" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_intersex" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json deleted file mode 100644 index 60faeb98cb..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:honeycomb" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_lesbian" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json deleted file mode 100644 index 1592908ece..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:moss_block" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_nonbinary" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json deleted file mode 100644 index 662aaf38fc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:repeater" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_plural" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json deleted file mode 100644 index cce2b91ea8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "minecraft:egg" - }, - "D": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - " D ", - "DCD", - " D " - ], - "result": { - "count": 1, - "id": "hexcasting:pride_colorizer_transgender" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json deleted file mode 100644 index 28f0b32b12..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:quenched_allay" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:quenched_allay_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json deleted file mode 100644 index fe5d0689ea..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_bricks_small" - } - ], - "result": { - "item": "hexcasting:quenched_allay_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json deleted file mode 100644 index 39371d2da1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:quenched_allay_bricks" - } - ], - "result": { - "item": "hexcasting:quenched_allay_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json deleted file mode 100644 index 4551fabc34..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:quenched_allay_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:quenched_allay_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json deleted file mode 100644 index cf7a4fcfb1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - "PPA", - "PPP", - "PPP" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json deleted file mode 100644 index 85b2a98f34..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "PP ", - "PP " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_medium" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json deleted file mode 100644 index 1feb96a530..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:paper" - }, - "D": { - "item": "minecraft:paper" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:scroll_paper" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json deleted file mode 100644 index 5434f4c7f1..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "B": { - "item": "minecraft:torch" - }, - "T": { - "item": "hexcasting:scroll_paper" - } - }, - "pattern": [ - "T", - "B" - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_paper_lantern" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json deleted file mode 100644 index c64a3e544a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "P": { - "item": "minecraft:paper" - } - }, - "pattern": [ - " A", - "P " - ], - "result": { - "count": 1, - "id": "hexcasting:scroll_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json deleted file mode 100644 index eb718972c2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "hexcasting:amethyst_dust" - }, - "S": { - "item": "minecraft:deepslate" - } - }, - "pattern": [ - " A ", - "SSS" - ], - "result": { - "count": 6, - "id": "hexcasting:slate" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json deleted file mode 100644 index 11cab9aed7..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks" - }, - { - "item": "hexcasting:amethyst_bricks" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json deleted file mode 100644 index a403896319..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks_small" - }, - { - "item": "hexcasting:amethyst_bricks_small" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json deleted file mode 100644 index 1265220319..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_pillar" - }, - { - "item": "hexcasting:amethyst_pillar" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_pillar" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json deleted file mode 100644 index 5cb7e77e23..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_tiles" - }, - { - "item": "hexcasting:amethyst_tiles" - } - ], - "result": { - "count": 2, - "item": "hexcasting:slate_amethyst_tiles" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json deleted file mode 100644 index 975fea26a0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "C": { - "item": "minecraft:deepslate" - }, - "D": { - "item": "minecraft:deepslate" - }, - "I": { - "item": "hexcasting:amethyst_dust" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 8, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json deleted file mode 100644 index 92bf412fdf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "S": { - "item": "hexcasting:slate" - } - }, - "pattern": [ - "S", - "S" - ], - "result": { - "count": 1, - "id": "hexcasting:slate_block" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json deleted file mode 100644 index e7320fda78..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:slate_bricks" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json deleted file mode 100644 index 2afebcd850..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks_small" - } - ], - "result": { - "item": "hexcasting:slate_bricks" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json deleted file mode 100644 index c7160e7d35..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "building", - "ingredients": [ - { - "item": "hexcasting:slate_bricks" - } - ], - "result": { - "item": "hexcasting:slate_bricks_small" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json deleted file mode 100644 index 95df1e497a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_block" - } - }, - "pattern": [ - "#", - "#" - ], - "result": { - "count": 2, - "item": "hexcasting:slate_pillar" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json deleted file mode 100644 index beb80118a8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "#": { - "item": "hexcasting:slate_bricks" - } - }, - "pattern": [ - "##", - "##" - ], - "result": { - "count": 4, - "item": "hexcasting:slate_tiles" - }, - "show_notification": true -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json deleted file mode 100644 index d9e9250926..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "B": { - "item": "minecraft:writable_book" - }, - "F": { - "item": "minecraft:chorus_fruit" - }, - "N": { - "tag": "c:nuggets/gold" - } - }, - "pattern": [ - "NBA", - "NFA", - "NBA" - ], - "result": { - "count": 1, - "id": "hexcasting:spellbook" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json deleted file mode 100644 index a5e01a9c9a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:acacia_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/acacia" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json deleted file mode 100644 index 8c648a860c..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:bamboo_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/bamboo" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json deleted file mode 100644 index 2cee68c976..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:birch_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/birch" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json deleted file mode 100644 index fb19b26271..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:cherry_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/cherry" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json deleted file mode 100644 index 6f8b4dd09e..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:crimson_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/crimson" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json deleted file mode 100644 index b4a9aea823..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:dark_oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/dark_oak" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json deleted file mode 100644 index 29378f8085..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:edified_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/edified" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json deleted file mode 100644 index a3b382cf11..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:jungle_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/jungle" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json deleted file mode 100644 index 2ad01c0d69..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:mangrove_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mangrove" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json deleted file mode 100644 index 41c9e8abb0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "tag": "hexcasting:brainswept_circle_components" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/mindsplice" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json deleted file mode 100644 index 75d6d9daab..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:oak_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/oak" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json deleted file mode 100644 index 91fd1fc452..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "hexcasting:quenched_allay_shard" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/quenched" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json deleted file mode 100644 index 0ab7166a60..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:spruce_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/spruce" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json deleted file mode 100644 index 8a71b96aaf..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "A": { - "item": "hexcasting:charged_amethyst" - }, - "S": { - "item": "minecraft:stick" - }, - "W": { - "item": "minecraft:warped_planks" - } - }, - "pattern": [ - " SA", - " WS", - "S " - ], - "result": { - "count": 1, - "id": "hexcasting:staff/warped" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json deleted file mode 100644 index e31a365848..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json deleted file mode 100644 index 224e2b2227..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json deleted file mode 100644 index e90486e072..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": "hexcasting:amethyst_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json deleted file mode 100644 index 51ae3111d5..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "ingredient": { - "tag": "hexcasting:amethyst_blocks" - }, - "result": { - "count": 1, - "id": "hexcasting:amethyst_tiles" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json deleted file mode 100644 index b3c53456f8..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json deleted file mode 100644 index d77c21d186..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json deleted file mode 100644 index 6be7b1f7dc..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:quenched_allay_blocks" - }, - "result": "hexcasting:quenched_allay_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json deleted file mode 100644 index 45ec158d58..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_bricks" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json deleted file mode 100644 index 0fd812ed48..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_bricks_small" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json deleted file mode 100644 index 7bed33595a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_pillar" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json deleted file mode 100644 index eec5621823..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "minecraft:stonecutting", - "count": 1, - "ingredient": { - "tag": "hexcasting:slate_blocks" - }, - "result": "hexcasting:slate_tiles" -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json deleted file mode 100644 index 0ccb5ae8e2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "W": { - "item": "hexcasting:stripped_edified_log" - } - }, - "pattern": [ - "WW", - "WW" - ], - "result": { - "count": 3, - "id": "hexcasting:stripped_edified_wood" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json deleted file mode 100644 index 82a511fde4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "A": { - "item": "minecraft:amethyst_shard" - }, - "B": { - "item": "minecraft:bread" - }, - "C": { - "item": "minecraft:cooked_beef" - }, - "S": { - "item": "minecraft:stick" - } - }, - "pattern": [ - " SA", - " C ", - " B " - ], - "result": { - "count": 1, - "id": "hexcasting:sub_sandwich" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json deleted file mode 100644 index d89ad83310..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "equipment", - "ingredients": [ - { - "item": "hexcasting:amethyst_dust" - }, - { - "item": "minecraft:string" - } - ], - "result": { - "count": 1, - "id": "hexcasting:thought_knot" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json deleted file mode 100644 index f0c905012a..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "equipment", - "key": { - "C": { - "tag": "c:ingots/iron" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - " C ", - "CIC", - " C " - ], - "result": { - "count": 1, - "id": "hexcasting:trinket" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json deleted file mode 100644 index 235a2aff68..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "misc", - "key": { - "C": { - "item": "hexcasting:amethyst_dust" - }, - "D": { - "item": "hexcasting:amethyst_dust" - }, - "I": { - "item": "minecraft:amethyst_shard" - } - }, - "pattern": [ - "DCD", - "CIC", - "DCD" - ], - "result": { - "count": 1, - "id": "hexcasting:uuid_colorizer" - } -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json deleted file mode 100644 index 7fc52a816b..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_block", - "hexcasting:conjured_light" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json deleted file mode 100644 index 0f2bcab34f..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "minecraft:kelp", - "minecraft:kelp_plant", - "minecraft:seagrass", - "minecraft:tall_seagrass" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json deleted file mode 100644 index 3113294d13..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:lightning", - "hexcasting:flight", - "hexcasting:create_lava", - "hexcasting:teleport/great", - "hexcasting:sentinel/create/great", - "hexcasting:dispel_rain", - "hexcasting:summon_rain", - "hexcasting:brainsweep", - "hexcasting:craft/battery", - "hexcasting:potion/regeneration", - "hexcasting:potion/night_vision", - "hexcasting:potion/absorption", - "hexcasting:potion/haste", - "hexcasting:potion/strength" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json deleted file mode 100644 index bf9788dbf2..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:amethyst_block", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_pillar" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json deleted file mode 100644 index aa71f4b195..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "#hexcasting:impeti", - "#hexcasting:directrices" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json deleted file mode 100644 index 824259f178..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json deleted file mode 100644 index 1f7070a707..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust", - "minecraft:amethyst_shard", - "hexcasting:charged_amethyst", - "hexcasting:creative_unlocker" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json deleted file mode 100644 index 358990d5b4..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:impetus/look", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/redstone" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json deleted file mode 100644 index 52ac4c0c96..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:glass_bottle" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json deleted file mode 100644 index fafd43cff0..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small", - "hexcasting:quenched_allay_tiles" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json deleted file mode 100644 index 674a370049..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "minecraft:honeycomb" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json deleted file mode 100644 index d8769826ea..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "replace": false, - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_tiles", - "hexcasting:slate_pillar" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json deleted file mode 100644 index 29f4595c62..0000000000 --- a/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "values": [ - "hexcasting:staff/edified", - "hexcasting:staff/oak", - "hexcasting:staff/spruce", - "hexcasting:staff/birch", - "hexcasting:staff/jungle", - "hexcasting:staff/acacia", - "hexcasting:staff/dark_oak", - "hexcasting:staff/crimson", - "hexcasting:staff/warped", - "hexcasting:staff/mangrove", - "hexcasting:staff/cherry", - "hexcasting:staff/bamboo", - "hexcasting:staff/quenched", - "hexcasting:staff/mindsplice" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json deleted file mode 100644 index 7a23dc1ec1..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "values": [ - "hexcasting:conjured_light", - "hexcasting:conjured_block", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_sconce" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json deleted file mode 100644 index 269de59e0a..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json deleted file mode 100644 index 0d6037e186..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "values": [ - "hexcasting:akashic_record", - "hexcasting:akashic_bookshelf", - "hexcasting:akashic_ligature", - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood", - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile", - "hexcasting:edified_door", - "hexcasting:edified_trapdoor", - "hexcasting:edified_slab", - "hexcasting:edified_button", - "hexcasting:edified_stairs", - "hexcasting:edified_fence", - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json deleted file mode 100644 index a8b1c2eb67..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "values": [ - "hexcasting:slate_block", - "hexcasting:slate_tiles", - "hexcasting:slate_bricks", - "hexcasting:slate_bricks_small", - "hexcasting:slate_pillar", - "hexcasting:slate", - "hexcasting:directrix/empty", - "hexcasting:directrix/redstone", - "hexcasting:directrix/boolean", - "hexcasting:impetus/empty", - "hexcasting:impetus/rightclick", - "hexcasting:impetus/look", - "hexcasting:impetus/redstone", - "hexcasting:amethyst_tiles", - "hexcasting:amethyst_bricks", - "hexcasting:amethyst_bricks_small", - "hexcasting:amethyst_pillar", - "hexcasting:slate_amethyst_tiles", - "hexcasting:slate_amethyst_bricks", - "hexcasting:slate_amethyst_bricks_small", - "hexcasting:slate_amethyst_pillar", - "hexcasting:amethyst_sconce", - "hexcasting:quenched_allay", - "hexcasting:quenched_allay_tiles", - "hexcasting:quenched_allay_bricks", - "hexcasting:quenched_allay_bricks_small" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json deleted file mode 100644 index 02d08df2b3..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_dust_block" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json deleted file mode 100644 index f27c95c784..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence_gate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json deleted file mode 100644 index 117722b2be..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "values": [ - "hexcasting:edified_fence", - "hexcasting:edified_fence" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json deleted file mode 100644 index c2e7fad75b..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_stairs" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json deleted file mode 100644 index 4209c89aa3..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:overcast" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json deleted file mode 100644 index ff8e420cc6..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:amethyst_edified_leaves", - "hexcasting:aventurine_edified_leaves", - "hexcasting:citrine_edified_leaves" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json deleted file mode 100644 index 22fc9e7a51..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "values": [ - "hexcasting:edified_log", - "hexcasting:edified_log_amethyst", - "hexcasting:edified_log_aventurine", - "hexcasting:edified_log_citrine", - "hexcasting:edified_log_purple", - "hexcasting:stripped_edified_log", - "hexcasting:edified_wood", - "hexcasting:stripped_edified_wood" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json deleted file mode 100644 index 36cc46d6db..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "values": [ - "hexcasting:edified_planks", - "hexcasting:edified_panel", - "hexcasting:edified_tile" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json deleted file mode 100644 index 672bbc1a69..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_button" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json deleted file mode 100644 index e5614ff46f..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_door" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json deleted file mode 100644 index 8880072112..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_pressure_plate" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json deleted file mode 100644 index af4c10b029..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_slab" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json deleted file mode 100644 index 0e9f576897..0000000000 --- a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "values": [ - "hexcasting:edified_trapdoor" - ] -} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json b/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json deleted file mode 100644 index 6699a7a66e..0000000000 --- a/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "entries": [ - "hexcasting:scroll/minecraft/chests/simple_dungeon", - "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", - "hexcasting:scroll/minecraft/chests/bastion_other", - "hexcasting:scroll/minecraft/chests/nether_bridge", - "hexcasting:scroll/minecraft/chests/jungle_temple", - "hexcasting:scroll/minecraft/chests/desert_pyramid", - "hexcasting:scroll/minecraft/chests/village/village_cartographer", - "hexcasting:scroll/minecraft/chests/shipwreck_map", - "hexcasting:scroll/minecraft/chests/bastion_treasure", - "hexcasting:scroll/minecraft/chests/end_city_treasure", - "hexcasting:scroll/minecraft/chests/ancient_city", - "hexcasting:scroll/minecraft/chests/pillager_outpost", - "hexcasting:scroll/minecraft/chests/woodland_mansion", - "hexcasting:scroll/minecraft/chests/stronghold_library", - "hexcasting:lore/minecraft/chests/simple_dungeon", - "hexcasting:lore/minecraft/chests/abandoned_mineshaft", - "hexcasting:lore/minecraft/chests/pillager_outpost", - "hexcasting:lore/minecraft/chests/woodland_mansion", - "hexcasting:lore/minecraft/chests/stronghold_library", - "hexcasting:lore/minecraft/chests/village/village_desert_house", - "hexcasting:lore/minecraft/chests/village/village_plains_house", - "hexcasting:lore/minecraft/chests/village/village_savanna_house", - "hexcasting:lore/minecraft/chests/village/village_snowy_house", - "hexcasting:lore/minecraft/chests/village/village_taiga_house", - "hexcasting:cypher/minecraft/chests/simple_dungeon", - "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", - "hexcasting:cypher/minecraft/chests/stronghold_corridor", - "hexcasting:cypher/minecraft/chests/jungle_temple", - "hexcasting:cypher/minecraft/chests/desert_pyramid", - "hexcasting:cypher/minecraft/chests/ancient_city", - "hexcasting:cypher/minecraft/chests/nether_bridge", - "hexcasting:amethyst_cluster" - ], - "replace": false -} \ No newline at end of file diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java index 925a36b648..aadb8138f4 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexConfig.java @@ -83,6 +83,7 @@ public static class Client implements HexConfig.ClientConfigAccess { private static ModConfigSpec.BooleanValue invertAbacusScrollDirection; private static ModConfigSpec.DoubleValue gridSnapThreshold; private static ModConfigSpec.BooleanValue clickingTogglesDrawing; + private static ModConfigSpec.BooleanValue alwaysShowListCommas; public Client(ModConfigSpec.Builder builder) { ctrlTogglesOffStrokeOrder = builder.comment( diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java index 7a653bd501..aecbe848c5 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java @@ -23,6 +23,9 @@ public ForgeHexLootModGen(PackOutput output, CompletableFuture client registar.playToClient(MsgNewSpellPatternS2C.TYPE, MsgNewSpellPatternS2C.STREAM_CODEC, makeClientBoundHandler(MsgNewSpellPatternS2C::handle)); - registar.playToClient(MsgBlinkS2C.TYPE, MsgBlinkS2C.STREAM_CODEC, - makeClientBoundHandler(MsgBlinkS2C::handle)); registar.playToClient(MsgSentinelStatusUpdateAck.TYPE, MsgSentinelStatusUpdateAck.STREAM_CODEC, makeClientBoundHandler(MsgSentinelStatusUpdateAck::handle)); registar.playToClient(MsgPigmentUpdateAck.TYPE, MsgPigmentUpdateAck.STREAM_CODEC, From 6de5e264dda33522ba1356a83ef0c81ca82428f4 Mon Sep 17 00:00:00 2001 From: Noelle Date: Sat, 17 Jan 2026 13:49:28 -0600 Subject: [PATCH 36/51] IDEA failed to be useful; readded generated resources as they should've existed in the first place --- .../blockstates/akashic_bookshelf.json | 107 +++++++++ .../blockstates/akashic_ligature.json | 7 + .../blockstates/akashic_record.json | 7 + .../blockstates/amethyst_bricks.json | 7 + .../blockstates/amethyst_bricks_small.json | 7 + .../blockstates/amethyst_dust_block.json | 7 + .../blockstates/amethyst_edified_leaves.json | 7 + .../blockstates/amethyst_pillar.json | 30 +++ .../blockstates/amethyst_sconce.json | 56 +++++ .../blockstates/amethyst_tiles.json | 7 + .../blockstates/ancient_scroll_paper.json | 7 + .../ancient_scroll_paper_lantern.json | 7 + .../aventurine_edified_leaves.json | 7 + .../blockstates/citrine_edified_leaves.json | 7 + .../blockstates/conjured_block.json | 7 + .../blockstates/conjured_light.json | 7 + .../blockstates/directrix/boolean.json | 142 ++++++++++++ .../blockstates/directrix/empty.json | 50 +++++ .../blockstates/directrix/redstone.json | 96 ++++++++ .../blockstates/edified_button.json | 118 ++++++++++ .../hexcasting/blockstates/edified_door.json | 124 ++++++++++ .../hexcasting/blockstates/edified_fence.json | 48 ++++ .../blockstates/edified_fence_gate.json | 80 +++++++ .../hexcasting/blockstates/edified_log.json | 16 ++ .../blockstates/edified_log_amethyst.json | 16 ++ .../blockstates/edified_log_aventurine.json | 16 ++ .../blockstates/edified_log_citrine.json | 16 ++ .../blockstates/edified_log_purple.json | 16 ++ .../hexcasting/blockstates/edified_panel.json | 7 + .../blockstates/edified_planks.json | 17 ++ .../blockstates/edified_pressure_plate.json | 10 + .../hexcasting/blockstates/edified_slab.json | 13 ++ .../blockstates/edified_stairs.json | 209 +++++++++++++++++ .../hexcasting/blockstates/edified_tile.json | 7 + .../blockstates/edified_trapdoor.json | 68 ++++++ .../hexcasting/blockstates/edified_wood.json | 16 ++ .../hexcasting/blockstates/impetus/empty.json | 50 +++++ .../hexcasting/blockstates/impetus/look.json | 50 +++++ .../blockstates/impetus/redstone.json | 96 ++++++++ .../blockstates/impetus/rightclick.json | 50 +++++ .../blockstates/quenched_allay.json | 7 + .../blockstates/quenched_allay_bricks.json | 7 + .../quenched_allay_bricks_small.json | 7 + .../blockstates/quenched_allay_tiles.json | 7 + .../hexcasting/blockstates/scroll_paper.json | 7 + .../blockstates/scroll_paper_lantern.json | 7 + .../assets/hexcasting/blockstates/slate.json | 122 ++++++++++ .../blockstates/slate_amethyst_bricks.json | 15 ++ .../slate_amethyst_bricks_small.json | 15 ++ .../blockstates/slate_amethyst_pillar.json | 16 ++ .../blockstates/slate_amethyst_tiles.json | 7 + .../hexcasting/blockstates/slate_block.json | 7 + .../hexcasting/blockstates/slate_bricks.json | 7 + .../blockstates/slate_bricks_small.json | 7 + .../hexcasting/blockstates/slate_pillar.json | 16 ++ .../hexcasting/blockstates/slate_tiles.json | 7 + .../blockstates/stripped_edified_log.json | 16 ++ .../blockstates/stripped_edified_wood.json | 16 ++ .../models/block/akashic_bookshelf.json | 68 ++++++ .../models/block/akashic_bookshelf_1.json | 6 + .../models/block/akashic_bookshelf_2.json | 6 + .../models/block/akashic_bookshelf_3.json | 6 + .../models/block/akashic_bookshelf_4.json | 6 + .../models/block/akashic_bookshelf_empty.json | 8 + .../models/block/akashic_ligature.json | 6 + .../models/block/akashic_record.json | 87 ++++++++ .../models/block/amethyst_dust_block.json | 6 + .../models/block/amethyst_edified_leaves.json | 7 + .../models/block/ancient_scroll_paper.json | 6 + .../block/ancient_scroll_paper_lantern.json | 8 + .../block/aventurine_edified_leaves.json | 7 + .../directrix/boolean/dim_false_down.json | 12 + .../directrix/boolean/dim_false_east.json | 12 + .../directrix/boolean/dim_false_north.json | 12 + .../directrix/boolean/dim_false_south.json | 12 + .../directrix/boolean/dim_false_up.json | 12 + .../directrix/boolean/dim_false_west.json | 12 + .../directrix/boolean/dim_neither_down.json | 12 + .../directrix/boolean/dim_neither_east.json | 12 + .../directrix/boolean/dim_neither_north.json | 12 + .../directrix/boolean/dim_neither_south.json | 12 + .../directrix/boolean/dim_neither_up.json | 12 + .../directrix/boolean/dim_neither_west.json | 12 + .../directrix/boolean/dim_true_down.json | 12 + .../directrix/boolean/dim_true_east.json | 12 + .../directrix/boolean/dim_true_north.json | 12 + .../directrix/boolean/dim_true_south.json | 12 + .../circle/directrix/boolean/dim_true_up.json | 12 + .../directrix/boolean/dim_true_west.json | 12 + .../directrix/boolean/lit_false_down.json | 12 + .../directrix/boolean/lit_false_east.json | 12 + .../directrix/boolean/lit_false_north.json | 12 + .../directrix/boolean/lit_false_south.json | 12 + .../directrix/boolean/lit_false_up.json | 12 + .../directrix/boolean/lit_false_west.json | 12 + .../directrix/boolean/lit_neither_down.json | 12 + .../directrix/boolean/lit_neither_east.json | 12 + .../directrix/boolean/lit_neither_north.json | 12 + .../directrix/boolean/lit_neither_south.json | 12 + .../directrix/boolean/lit_neither_up.json | 12 + .../directrix/boolean/lit_neither_west.json | 12 + .../directrix/boolean/lit_true_down.json | 12 + .../directrix/boolean/lit_true_east.json | 12 + .../directrix/boolean/lit_true_north.json | 12 + .../directrix/boolean/lit_true_south.json | 12 + .../circle/directrix/boolean/lit_true_up.json | 12 + .../directrix/boolean/lit_true_west.json | 12 + .../circle/directrix/empty/dim_down.json | 12 + .../circle/directrix/empty/dim_east.json | 12 + .../circle/directrix/empty/dim_north.json | 12 + .../circle/directrix/empty/dim_south.json | 12 + .../block/circle/directrix/empty/dim_up.json | 12 + .../circle/directrix/empty/dim_west.json | 12 + .../circle/directrix/empty/lit_down.json | 12 + .../circle/directrix/empty/lit_east.json | 12 + .../circle/directrix/empty/lit_north.json | 12 + .../circle/directrix/empty/lit_south.json | 12 + .../block/circle/directrix/empty/lit_up.json | 12 + .../circle/directrix/empty/lit_west.json | 12 + .../directrix/redstone/dim_powered_down.json | 12 + .../directrix/redstone/dim_powered_east.json | 12 + .../directrix/redstone/dim_powered_north.json | 12 + .../directrix/redstone/dim_powered_south.json | 12 + .../directrix/redstone/dim_powered_up.json | 12 + .../directrix/redstone/dim_powered_west.json | 12 + .../redstone/dim_unpowered_down.json | 12 + .../redstone/dim_unpowered_east.json | 12 + .../redstone/dim_unpowered_north.json | 12 + .../redstone/dim_unpowered_south.json | 12 + .../directrix/redstone/dim_unpowered_up.json | 12 + .../redstone/dim_unpowered_west.json | 12 + .../directrix/redstone/lit_powered_down.json | 12 + .../directrix/redstone/lit_powered_east.json | 12 + .../directrix/redstone/lit_powered_north.json | 12 + .../directrix/redstone/lit_powered_south.json | 12 + .../directrix/redstone/lit_powered_up.json | 12 + .../directrix/redstone/lit_powered_west.json | 12 + .../redstone/lit_unpowered_down.json | 12 + .../redstone/lit_unpowered_east.json | 12 + .../redstone/lit_unpowered_north.json | 12 + .../redstone/lit_unpowered_south.json | 12 + .../directrix/redstone/lit_unpowered_up.json | 12 + .../redstone/lit_unpowered_west.json | 12 + .../block/circle/impetus/empty/dim_down.json | 12 + .../block/circle/impetus/empty/dim_east.json | 12 + .../block/circle/impetus/empty/dim_north.json | 12 + .../block/circle/impetus/empty/dim_south.json | 12 + .../block/circle/impetus/empty/dim_up.json | 12 + .../block/circle/impetus/empty/dim_west.json | 12 + .../block/circle/impetus/empty/lit_down.json | 12 + .../block/circle/impetus/empty/lit_east.json | 12 + .../block/circle/impetus/empty/lit_north.json | 12 + .../block/circle/impetus/empty/lit_south.json | 12 + .../block/circle/impetus/empty/lit_up.json | 12 + .../block/circle/impetus/empty/lit_west.json | 12 + .../block/circle/impetus/look/dim_down.json | 12 + .../block/circle/impetus/look/dim_east.json | 12 + .../block/circle/impetus/look/dim_north.json | 12 + .../block/circle/impetus/look/dim_south.json | 12 + .../block/circle/impetus/look/dim_up.json | 12 + .../block/circle/impetus/look/dim_west.json | 12 + .../block/circle/impetus/look/lit_down.json | 12 + .../block/circle/impetus/look/lit_east.json | 12 + .../block/circle/impetus/look/lit_north.json | 12 + .../block/circle/impetus/look/lit_south.json | 12 + .../block/circle/impetus/look/lit_up.json | 12 + .../block/circle/impetus/look/lit_west.json | 12 + .../circle/impetus/redstone/dim_down.json | 12 + .../circle/impetus/redstone/dim_east.json | 12 + .../circle/impetus/redstone/dim_north.json | 12 + .../circle/impetus/redstone/dim_south.json | 12 + .../block/circle/impetus/redstone/dim_up.json | 12 + .../circle/impetus/redstone/dim_west.json | 12 + .../circle/impetus/redstone/lit_down.json | 12 + .../circle/impetus/redstone/lit_east.json | 12 + .../circle/impetus/redstone/lit_north.json | 12 + .../circle/impetus/redstone/lit_south.json | 12 + .../block/circle/impetus/redstone/lit_up.json | 12 + .../circle/impetus/redstone/lit_west.json | 12 + .../circle/impetus/rightclick/dim_down.json | 12 + .../circle/impetus/rightclick/dim_east.json | 12 + .../circle/impetus/rightclick/dim_north.json | 12 + .../circle/impetus/rightclick/dim_south.json | 12 + .../circle/impetus/rightclick/dim_up.json | 12 + .../circle/impetus/rightclick/dim_west.json | 12 + .../circle/impetus/rightclick/lit_down.json | 12 + .../circle/impetus/rightclick/lit_east.json | 12 + .../circle/impetus/rightclick/lit_north.json | 12 + .../circle/impetus/rightclick/lit_south.json | 12 + .../circle/impetus/rightclick/lit_up.json | 12 + .../circle/impetus/rightclick/lit_west.json | 12 + .../models/block/citrine_edified_leaves.json | 7 + .../hexcasting/models/block/conjured.json | 6 + .../models/block/deco/amethyst_bricks.json | 6 + .../block/deco/amethyst_bricks_small.json | 6 + .../models/block/deco/amethyst_pillar.json | 8 + .../models/block/deco/amethyst_tiles.json | 6 + .../block/deco/quenched_allay_bricks_0.json | 6 + .../block/deco/quenched_allay_bricks_1.json | 6 + .../block/deco/quenched_allay_bricks_2.json | 6 + .../block/deco/quenched_allay_bricks_3.json | 6 + .../deco/quenched_allay_bricks_small_0.json | 6 + .../deco/quenched_allay_bricks_small_1.json | 6 + .../deco/quenched_allay_bricks_small_2.json | 6 + .../deco/quenched_allay_bricks_small_3.json | 6 + .../block/deco/quenched_allay_tiles_0.json | 6 + .../block/deco/quenched_allay_tiles_1.json | 6 + .../block/deco/quenched_allay_tiles_2.json | 6 + .../block/deco/quenched_allay_tiles_3.json | 6 + .../block/deco/slate_amethyst_bricks_0.json | 6 + .../block/deco/slate_amethyst_bricks_1.json | 6 + .../block/deco/slate_amethyst_bricks_2.json | 6 + .../deco/slate_amethyst_bricks_small_0.json | 6 + .../deco/slate_amethyst_bricks_small_1.json | 6 + .../deco/slate_amethyst_bricks_small_2.json | 6 + .../block/deco/slate_amethyst_tiles.json | 6 + .../models/block/deco/slate_bricks.json | 6 + .../models/block/deco/slate_bricks_small.json | 6 + .../models/block/deco/slate_tiles.json | 6 + .../models/block/edified_button.json | 6 + .../models/block/edified_button_pressed.json | 6 + .../block/edified_door_bottom_left.json | 8 + .../block/edified_door_bottom_left_open.json | 8 + .../block/edified_door_bottom_right.json | 8 + .../block/edified_door_bottom_right_open.json | 8 + .../models/block/edified_door_top_left.json | 8 + .../block/edified_door_top_left_open.json | 8 + .../models/block/edified_door_top_right.json | 8 + .../block/edified_door_top_right_open.json | 8 + .../models/block/edified_fence_gate.json | 6 + .../models/block/edified_fence_gate_open.json | 6 + .../models/block/edified_fence_gate_wall.json | 6 + .../block/edified_fence_gate_wall_open.json | 6 + .../models/block/edified_fence_post.json | 6 + .../models/block/edified_fence_side.json | 6 + .../hexcasting/models/block/edified_log.json | 7 + .../models/block/edified_log_amethyst.json | 7 + .../edified_log_amethyst_horizontal.json | 7 + .../models/block/edified_log_aventurine.json | 7 + .../edified_log_aventurine_horizontal.json | 7 + .../models/block/edified_log_citrine.json | 7 + .../block/edified_log_citrine_horizontal.json | 7 + .../models/block/edified_log_horizontal.json | 7 + .../models/block/edified_log_purple.json | 7 + .../block/edified_log_purple_horizontal.json | 7 + .../models/block/edified_panel.json | 6 + .../models/block/edified_planks.json | 6 + .../models/block/edified_planks_2.json | 6 + .../models/block/edified_planks_3.json | 6 + .../models/block/edified_pressure_plate.json | 6 + .../block/edified_pressure_plate_down.json | 6 + .../hexcasting/models/block/edified_slab.json | 8 + .../models/block/edified_slab_top.json | 8 + .../models/block/edified_stairs.json | 8 + .../models/block/edified_stairs_inner.json | 8 + .../models/block/edified_stairs_outer.json | 8 + .../hexcasting/models/block/edified_tile.json | 6 + .../models/block/edified_trapdoor_bottom.json | 7 + .../models/block/edified_trapdoor_open.json | 7 + .../models/block/edified_trapdoor_top.json | 7 + .../hexcasting/models/block/edified_wood.json | 7 + .../models/block/edified_wood_horizontal.json | 7 + .../models/block/quenched_allay.json | 6 + .../models/block/quenched_allay_0.json | 6 + .../models/block/quenched_allay_1.json | 6 + .../models/block/quenched_allay_2.json | 6 + .../models/block/quenched_allay_3.json | 6 + .../models/block/quenched_allay_bricks.json | 6 + .../block/quenched_allay_bricks_small.json | 6 + .../models/block/quenched_allay_tiles.json | 6 + .../hexcasting/models/block/scroll_paper.json | 6 + .../models/block/scroll_paper_lantern.json | 8 + .../models/block/slate_amethyst_pillar.json | 7 + .../slate_amethyst_pillar_horizontal.json | 7 + .../hexcasting/models/block/slate_block.json | 6 + .../hexcasting/models/block/slate_pillar.json | 7 + .../models/block/slate_pillar_horizontal.json | 7 + .../models/block/stripped_edified_log.json | 7 + .../stripped_edified_log_horizontal.json | 7 + .../models/block/stripped_edified_wood.json | 7 + .../stripped_edified_wood_horizontal.json | 7 + .../assets/hexcasting/models/item/abacus.json | 6 + .../models/item/akashic_bookshelf.json | 3 + .../models/item/akashic_ligature.json | 3 + .../models/item/akashic_record.json | 3 + .../models/item/amethyst_bricks.json | 3 + .../models/item/amethyst_bricks_small.json | 3 + .../hexcasting/models/item/amethyst_dust.json | 6 + .../models/item/amethyst_dust_block.json | 3 + .../models/item/amethyst_edified_leaves.json | 3 + .../models/item/amethyst_pillar.json | 3 + .../models/item/amethyst_sconce.json | 3 + .../models/item/amethyst_tiles.json | 3 + .../models/item/ancient_colorizer.json | 6 + .../models/item/ancient_cypher.json | 120 ++++++++++ .../models/item/ancient_cypher_0_filled.json | 7 + .../models/item/ancient_cypher_1.json | 6 + .../models/item/ancient_cypher_1_filled.json | 7 + .../models/item/ancient_cypher_2.json | 6 + .../models/item/ancient_cypher_2_filled.json | 7 + .../models/item/ancient_cypher_3.json | 6 + .../models/item/ancient_cypher_3_filled.json | 7 + .../models/item/ancient_cypher_4.json | 6 + .../models/item/ancient_cypher_4_filled.json | 7 + .../models/item/ancient_cypher_5.json | 6 + .../models/item/ancient_cypher_5_filled.json | 7 + .../models/item/ancient_cypher_6.json | 6 + .../models/item/ancient_cypher_6_filled.json | 7 + .../models/item/ancient_cypher_7.json | 6 + .../models/item/ancient_cypher_7_filled.json | 7 + .../models/item/ancient_scroll_paper.json | 3 + .../item/ancient_scroll_paper_lantern.json | 3 + .../hexcasting/models/item/artifact.json | 120 ++++++++++ .../models/item/artifact_0_filled.json | 7 + .../hexcasting/models/item/artifact_1.json | 6 + .../models/item/artifact_1_filled.json | 7 + .../hexcasting/models/item/artifact_2.json | 6 + .../models/item/artifact_2_filled.json | 7 + .../hexcasting/models/item/artifact_3.json | 6 + .../models/item/artifact_3_filled.json | 7 + .../hexcasting/models/item/artifact_4.json | 6 + .../models/item/artifact_4_filled.json | 7 + .../hexcasting/models/item/artifact_5.json | 6 + .../models/item/artifact_5_filled.json | 7 + .../hexcasting/models/item/artifact_6.json | 6 + .../models/item/artifact_6_filled.json | 7 + .../hexcasting/models/item/artifact_7.json | 6 + .../models/item/artifact_7_filled.json | 7 + .../item/aventurine_edified_leaves.json | 3 + .../hexcasting/models/item/battery.json | 179 +++++++++++++++ .../models/item/charged_amethyst.json | 6 + .../hexcasting/models/item/cherry_staff.json | 6 + .../models/item/citrine_edified_leaves.json | 3 + .../models/item/conjured_block.json | 6 + .../models/item/conjured_light.json | 6 + .../models/item/creative_unlocker.json | 6 + .../assets/hexcasting/models/item/cypher.json | 120 ++++++++++ .../models/item/cypher_0_filled.json | 7 + .../hexcasting/models/item/cypher_1.json | 6 + .../models/item/cypher_1_filled.json | 7 + .../hexcasting/models/item/cypher_2.json | 6 + .../models/item/cypher_2_filled.json | 7 + .../hexcasting/models/item/cypher_3.json | 6 + .../models/item/cypher_3_filled.json | 7 + .../hexcasting/models/item/cypher_4.json | 6 + .../models/item/cypher_4_filled.json | 7 + .../hexcasting/models/item/cypher_5.json | 6 + .../models/item/cypher_5_filled.json | 7 + .../hexcasting/models/item/cypher_6.json | 6 + .../models/item/cypher_6_filled.json | 7 + .../hexcasting/models/item/cypher_7.json | 6 + .../models/item/cypher_7_filled.json | 7 + .../models/item/default_colorizer.json | 6 + .../models/item/directrix/boolean.json | 3 + .../models/item/directrix/empty.json | 3 + .../models/item/directrix/redstone.json | 3 + .../models/item/dye_colorizer_black.json | 6 + .../models/item/dye_colorizer_blue.json | 6 + .../models/item/dye_colorizer_brown.json | 6 + .../models/item/dye_colorizer_cyan.json | 6 + .../models/item/dye_colorizer_gray.json | 6 + .../models/item/dye_colorizer_green.json | 6 + .../models/item/dye_colorizer_light_blue.json | 6 + .../models/item/dye_colorizer_light_gray.json | 6 + .../models/item/dye_colorizer_lime.json | 6 + .../models/item/dye_colorizer_magenta.json | 6 + .../models/item/dye_colorizer_orange.json | 6 + .../models/item/dye_colorizer_pink.json | 6 + .../models/item/dye_colorizer_purple.json | 6 + .../models/item/dye_colorizer_red.json | 6 + .../models/item/dye_colorizer_white.json | 6 + .../models/item/dye_colorizer_yellow.json | 6 + .../models/item/edified_button.json | 6 + .../hexcasting/models/item/edified_door.json | 6 + .../hexcasting/models/item/edified_fence.json | 3 + .../models/item/edified_fence_gate.json | 3 + .../hexcasting/models/item/edified_log.json | 3 + .../models/item/edified_log_amethyst.json | 3 + .../models/item/edified_log_aventurine.json | 3 + .../models/item/edified_log_citrine.json | 3 + .../models/item/edified_log_purple.json | 3 + .../hexcasting/models/item/edified_panel.json | 3 + .../models/item/edified_planks.json | 3 + .../models/item/edified_pressure_plate.json | 3 + .../hexcasting/models/item/edified_slab.json | 3 + .../models/item/edified_stairs.json | 3 + .../hexcasting/models/item/edified_tile.json | 3 + .../models/item/edified_trapdoor.json | 3 + .../hexcasting/models/item/edified_wood.json | 3 + .../assets/hexcasting/models/item/focus.json | 176 +++++++++++++++ .../models/item/focus_0_filled.json | 7 + .../models/item/focus_0_sealed.json | 7 + .../hexcasting/models/item/focus_1.json | 6 + .../models/item/focus_1_filled.json | 7 + .../models/item/focus_1_sealed.json | 7 + .../hexcasting/models/item/focus_2.json | 6 + .../models/item/focus_2_filled.json | 7 + .../models/item/focus_2_sealed.json | 7 + .../hexcasting/models/item/focus_3.json | 6 + .../models/item/focus_3_filled.json | 7 + .../models/item/focus_3_sealed.json | 7 + .../hexcasting/models/item/focus_4.json | 6 + .../models/item/focus_4_filled.json | 7 + .../models/item/focus_4_sealed.json | 7 + .../hexcasting/models/item/focus_5.json | 6 + .../models/item/focus_5_filled.json | 7 + .../models/item/focus_5_sealed.json | 7 + .../hexcasting/models/item/focus_6.json | 6 + .../models/item/focus_6_filled.json | 7 + .../models/item/focus_6_sealed.json | 7 + .../hexcasting/models/item/focus_7.json | 6 + .../models/item/focus_7_filled.json | 7 + .../models/item/focus_7_sealed.json | 7 + .../hexcasting/models/item/impetus/empty.json | 3 + .../hexcasting/models/item/impetus/look.json | 3 + .../models/item/impetus/redstone.json | 3 + .../models/item/impetus/rightclick.json | 3 + .../models/item/jeweler_hammer.json | 6 + .../assets/hexcasting/models/item/lens.json | 20 ++ .../hexcasting/models/item/lore_fragment.json | 6 + .../hexcasting/models/item/old_staff.json | 6 + .../models/item/patchouli_book.json | 6 + .../hexcasting/models/item/phial_large_0.json | 6 + .../hexcasting/models/item/phial_large_1.json | 6 + .../hexcasting/models/item/phial_large_2.json | 6 + .../hexcasting/models/item/phial_large_3.json | 6 + .../hexcasting/models/item/phial_large_4.json | 6 + .../models/item/phial_larger_0.json | 6 + .../models/item/phial_larger_1.json | 6 + .../models/item/phial_larger_2.json | 6 + .../models/item/phial_larger_3.json | 6 + .../models/item/phial_larger_4.json | 6 + .../models/item/phial_largest_0.json | 6 + .../models/item/phial_largest_1.json | 6 + .../models/item/phial_largest_2.json | 6 + .../models/item/phial_largest_3.json | 6 + .../models/item/phial_largest_4.json | 6 + .../models/item/phial_medium_0.json | 6 + .../models/item/phial_medium_1.json | 6 + .../models/item/phial_medium_2.json | 6 + .../models/item/phial_medium_3.json | 6 + .../models/item/phial_medium_4.json | 6 + .../hexcasting/models/item/phial_small_0.json | 6 + .../hexcasting/models/item/phial_small_1.json | 6 + .../hexcasting/models/item/phial_small_2.json | 6 + .../hexcasting/models/item/phial_small_3.json | 6 + .../hexcasting/models/item/phial_small_4.json | 6 + .../models/item/pride_colorizer_agender.json | 6 + .../models/item/pride_colorizer_aroace.json | 6 + .../item/pride_colorizer_aromantic.json | 6 + .../models/item/pride_colorizer_asexual.json | 6 + .../models/item/pride_colorizer_bisexual.json | 6 + .../models/item/pride_colorizer_demiboy.json | 6 + .../models/item/pride_colorizer_demigirl.json | 6 + .../models/item/pride_colorizer_gay.json | 6 + .../item/pride_colorizer_genderfluid.json | 6 + .../item/pride_colorizer_genderqueer.json | 6 + .../models/item/pride_colorizer_intersex.json | 6 + .../models/item/pride_colorizer_lesbian.json | 6 + .../item/pride_colorizer_nonbinary.json | 6 + .../item/pride_colorizer_pansexual.json | 6 + .../models/item/pride_colorizer_plural.json | 6 + .../item/pride_colorizer_transgender.json | 6 + .../models/item/quenched_allay.json | 28 +++ .../models/item/quenched_allay_bricks.json | 28 +++ .../item/quenched_allay_bricks_small.json | 28 +++ .../models/item/quenched_allay_shard.json | 28 +++ .../models/item/quenched_allay_tiles.json | 28 +++ .../models/item/quenched_shard_0.json | 6 + .../models/item/quenched_shard_1.json | 6 + .../models/item/quenched_shard_2.json | 6 + .../models/item/quenched_shard_3.json | 6 + .../assets/hexcasting/models/item/scroll.json | 16 ++ .../models/item/scroll_ancient_large.json | 6 + .../models/item/scroll_ancient_medium.json | 6 + .../models/item/scroll_ancient_small.json | 6 + .../hexcasting/models/item/scroll_medium.json | 16 ++ .../hexcasting/models/item/scroll_paper.json | 3 + .../models/item/scroll_paper_lantern.json | 3 + .../models/item/scroll_pristine_large.json | 6 + .../models/item/scroll_pristine_medium.json | 6 + .../models/item/scroll_pristine_small.json | 6 + .../hexcasting/models/item/scroll_small.json | 16 ++ .../assets/hexcasting/models/item/slate.json | 16 ++ .../models/item/slate_amethyst_bricks.json | 3 + .../item/slate_amethyst_bricks_small.json | 3 + .../models/item/slate_amethyst_pillar.json | 3 + .../models/item/slate_amethyst_tiles.json | 3 + .../hexcasting/models/item/slate_blank.json | 6 + .../hexcasting/models/item/slate_block.json | 3 + .../hexcasting/models/item/slate_bricks.json | 3 + .../models/item/slate_bricks_small.json | 3 + .../hexcasting/models/item/slate_pillar.json | 3 + .../hexcasting/models/item/slate_tiles.json | 3 + .../hexcasting/models/item/slate_written.json | 6 + .../hexcasting/models/item/spellbook.json | 176 +++++++++++++++ .../models/item/spellbook_0_filled.json | 7 + .../models/item/spellbook_0_sealed.json | 7 + .../hexcasting/models/item/spellbook_1.json | 6 + .../models/item/spellbook_1_filled.json | 7 + .../models/item/spellbook_1_sealed.json | 7 + .../hexcasting/models/item/spellbook_2.json | 6 + .../models/item/spellbook_2_filled.json | 7 + .../models/item/spellbook_2_sealed.json | 7 + .../hexcasting/models/item/spellbook_3.json | 6 + .../models/item/spellbook_3_filled.json | 7 + .../models/item/spellbook_3_sealed.json | 7 + .../hexcasting/models/item/spellbook_4.json | 6 + .../models/item/spellbook_4_filled.json | 7 + .../models/item/spellbook_4_sealed.json | 7 + .../hexcasting/models/item/spellbook_5.json | 6 + .../models/item/spellbook_5_filled.json | 7 + .../models/item/spellbook_5_sealed.json | 7 + .../hexcasting/models/item/spellbook_6.json | 6 + .../models/item/spellbook_6_filled.json | 7 + .../models/item/spellbook_6_sealed.json | 7 + .../hexcasting/models/item/spellbook_7.json | 6 + .../models/item/spellbook_7_filled.json | 7 + .../models/item/spellbook_7_sealed.json | 7 + .../hexcasting/models/item/staff/acacia.json | 6 + .../hexcasting/models/item/staff/bamboo.json | 6 + .../hexcasting/models/item/staff/birch.json | 6 + .../hexcasting/models/item/staff/cherry.json | 6 + .../hexcasting/models/item/staff/crimson.json | 6 + .../models/item/staff/dark_oak.json | 6 + .../hexcasting/models/item/staff/edified.json | 6 + .../hexcasting/models/item/staff/jungle.json | 6 + .../models/item/staff/mangrove.json | 6 + .../models/item/staff/mindsplice.json | 6 + .../hexcasting/models/item/staff/oak.json | 6 + .../models/item/staff/quenched.json | 28 +++ .../models/item/staff/quenched_0.json | 6 + .../models/item/staff/quenched_1.json | 6 + .../models/item/staff/quenched_2.json | 6 + .../models/item/staff/quenched_3.json | 6 + .../hexcasting/models/item/staff/spruce.json | 6 + .../hexcasting/models/item/staff/warped.json | 6 + .../models/item/stripped_edified_log.json | 3 + .../models/item/stripped_edified_wood.json | 3 + .../hexcasting/models/item/sub_sandwich.json | 6 + .../hexcasting/models/item/thought_knot.json | 20 ++ .../models/item/thought_knot_written.json | 7 + .../hexcasting/models/item/trinket.json | 120 ++++++++++ .../models/item/trinket_0_filled.json | 7 + .../hexcasting/models/item/trinket_1.json | 6 + .../models/item/trinket_1_filled.json | 7 + .../hexcasting/models/item/trinket_2.json | 6 + .../models/item/trinket_2_filled.json | 7 + .../hexcasting/models/item/trinket_3.json | 6 + .../models/item/trinket_3_filled.json | 7 + .../hexcasting/models/item/trinket_4.json | 6 + .../models/item/trinket_4_filled.json | 7 + .../hexcasting/models/item/trinket_5.json | 6 + .../models/item/trinket_5_filled.json | 7 + .../hexcasting/models/item/trinket_6.json | 6 + .../models/item/trinket_6_filled.json | 7 + .../hexcasting/models/item/trinket_7.json | 6 + .../models/item/trinket_7_filled.json | 7 + .../models/item/uuid_colorizer.json | 6 + .../hexcasting/models/staff/acacia.json | 16 ++ .../hexcasting/models/staff/bamboo.json | 16 ++ .../assets/hexcasting/models/staff/birch.json | 16 ++ .../hexcasting/models/staff/cherry.json | 16 ++ .../hexcasting/models/staff/crimson.json | 16 ++ .../hexcasting/models/staff/dark_oak.json | 16 ++ .../hexcasting/models/staff/edified.json | 16 ++ .../hexcasting/models/staff/jungle.json | 16 ++ .../hexcasting/models/staff/mangrove.json | 16 ++ .../hexcasting/models/staff/mindsplice.json | 16 ++ .../assets/hexcasting/models/staff/oak.json | 16 ++ .../hexcasting/models/staff/spruce.json | 16 ++ .../hexcasting/models/staff/warped.json | 16 ++ .../data/create/tags/block/brittle.json | 8 + .../data/forge/tags/item/dusts/amethyst.json | 5 + .../resources/data/forge/tags/item/gems.json | 5 + .../advancement/aaa_wasteful_cast.json | 32 +++ .../hexcasting/advancement/aab_big_cast.json | 32 +++ .../advancement/creative_unlocker.json | 36 +++ .../hexcasting/advancement/enlightenment.json | 38 ++++ .../data/hexcasting/advancement/lore.json | 32 +++ .../advancement/lore/cardamom1.json | 25 +++ .../advancement/lore/cardamom2.json | 25 +++ .../advancement/lore/cardamom3.json | 25 +++ .../advancement/lore/cardamom4.json | 25 +++ .../advancement/lore/cardamom5.json | 25 +++ .../advancement/lore/experiment1.json | 25 +++ .../advancement/lore/experiment2.json | 25 +++ .../advancement/lore/inventory.json | 25 +++ .../hexcasting/advancement/opened_eyes.json | 33 +++ .../recipes/brainsweep/akashic_record.json | 35 +++ .../recipes/brainsweep/budding_amethyst.json | 35 +++ .../recipes/brainsweep/directrix_boolean.json | 35 +++ .../brainsweep/directrix_redstone.json | 35 +++ .../recipes/brainsweep/impetus_look.json | 35 +++ .../brainsweep/impetus_rightclick.json | 35 +++ .../brainsweep/impetus_storedplayer.json | 35 +++ .../recipes/brainsweep/quench_allay.json | 35 +++ .../building_blocks/amethyst_bricks.json | 32 +++ ...yst_bricks_from_amethyst_bricks_small.json | 32 +++ ...yst_bricks_small_from_amethyst_bricks.json | 32 +++ .../amethyst_dust_packing.json | 32 +++ .../amethyst_dust_unpacking.json | 32 +++ .../building_blocks/amethyst_pillar.json | 32 +++ .../building_blocks/amethyst_tiles.json | 32 +++ .../building_blocks/ancient_scroll_paper.json | 32 +++ .../building_blocks/edified_fence.json | 32 +++ .../building_blocks/edified_fence_gate.json | 32 +++ .../building_blocks/edified_panel.json | 32 +++ .../building_blocks/edified_planks.json | 32 +++ .../recipes/building_blocks/edified_slab.json | 32 +++ .../building_blocks/edified_stairs.json | 32 +++ .../recipes/building_blocks/edified_tile.json | 32 +++ .../recipes/building_blocks/edified_wood.json | 32 +++ .../quenched_allay_bricks.json | 32 +++ ...icks_from_quenched_allay_bricks_small.json | 32 +++ ...icks_small_from_quenched_allay_bricks.json | 32 +++ .../building_blocks/quenched_allay_tiles.json | 32 +++ .../recipes/building_blocks/scroll_paper.json | 32 +++ .../slate_amethyst_bricks.json | 32 +++ .../slate_amethyst_bricks_small.json | 32 +++ .../slate_amethyst_pillar.json | 32 +++ .../building_blocks/slate_amethyst_tiles.json | 32 +++ .../recipes/building_blocks/slate_block.json | 32 +++ .../slate_block_from_slates.json | 32 +++ .../recipes/building_blocks/slate_bricks.json | 32 +++ .../slate_bricks_from_slate_bricks_small.json | 32 +++ .../slate_bricks_small_from_slate_bricks.json | 32 +++ .../recipes/building_blocks/slate_pillar.json | 32 +++ .../recipes/building_blocks/slate_tiles.json | 32 +++ .../stonecutting/amethyst_bricks.json | 32 +++ .../stonecutting/amethyst_bricks_small.json | 32 +++ .../stonecutting/amethyst_pillar.json | 32 +++ .../stonecutting/amethyst_tiles.json | 32 +++ .../stonecutting/quenched_allay_bricks.json | 32 +++ .../quenched_allay_bricks_small.json | 32 +++ .../stonecutting/quenched_allay_tiles.json | 32 +++ .../stonecutting/slate_bricks.json | 32 +++ .../stonecutting/slate_bricks_small.json | 32 +++ .../stonecutting/slate_pillar.json | 32 +++ .../stonecutting/slate_tiles.json | 32 +++ .../stripped_edified_wood.json | 32 +++ .../ageing_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/amethyst_sconce.json | 32 +++ .../ancient_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll.json | 32 +++ .../recipes/decorations/scroll_medium.json | 32 +++ .../decorations/scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll_small.json | 32 +++ .../recipes/decorations/slate.json | 32 +++ .../recipes/food/sub_sandwich.json | 32 +++ .../recipes/misc/ancient_colorizer.json | 32 +++ .../decompose_quenched_shard/charged.json | 32 +++ .../misc/decompose_quenched_shard/dust.json | 32 +++ .../misc/decompose_quenched_shard/shard.json | 32 +++ .../recipes/misc/default_colorizer.json | 32 +++ .../recipes/misc/dye_colorizer_black.json | 32 +++ .../recipes/misc/dye_colorizer_blue.json | 32 +++ .../recipes/misc/dye_colorizer_brown.json | 32 +++ .../recipes/misc/dye_colorizer_cyan.json | 32 +++ .../recipes/misc/dye_colorizer_gray.json | 32 +++ .../recipes/misc/dye_colorizer_green.json | 32 +++ .../misc/dye_colorizer_light_blue.json | 32 +++ .../misc/dye_colorizer_light_gray.json | 32 +++ .../recipes/misc/dye_colorizer_lime.json | 32 +++ .../recipes/misc/dye_colorizer_magenta.json | 32 +++ .../recipes/misc/dye_colorizer_orange.json | 32 +++ .../recipes/misc/dye_colorizer_pink.json | 32 +++ .../recipes/misc/dye_colorizer_purple.json | 32 +++ .../recipes/misc/dye_colorizer_red.json | 32 +++ .../recipes/misc/dye_colorizer_white.json | 32 +++ .../recipes/misc/dye_colorizer_yellow.json | 32 +++ .../recipes/misc/pride_colorizer_agender.json | 32 +++ .../recipes/misc/pride_colorizer_aroace.json | 32 +++ .../misc/pride_colorizer_aromantic.json | 32 +++ .../recipes/misc/pride_colorizer_asexual.json | 32 +++ .../misc/pride_colorizer_bisexual.json | 32 +++ .../recipes/misc/pride_colorizer_demiboy.json | 32 +++ .../misc/pride_colorizer_demigirl.json | 32 +++ .../recipes/misc/pride_colorizer_gay.json | 32 +++ .../misc/pride_colorizer_genderfluid.json | 32 +++ .../misc/pride_colorizer_genderqueer.json | 32 +++ .../misc/pride_colorizer_intersex.json | 32 +++ .../recipes/misc/pride_colorizer_lesbian.json | 32 +++ .../misc/pride_colorizer_nonbinary.json | 32 +++ .../recipes/misc/pride_colorizer_plural.json | 32 +++ .../misc/pride_colorizer_transgender.json | 32 +++ .../recipes/misc/uuid_colorizer.json | 32 +++ .../recipes/redstone/akashic_bookshelf.json | 35 +++ .../recipes/redstone/akashic_ligature.json | 35 +++ .../recipes/redstone/directrix/empty.json | 35 +++ .../recipes/redstone/edified_button.json | 32 +++ .../recipes/redstone/edified_door.json | 32 +++ .../redstone/edified_pressure_plate.json | 32 +++ .../recipes/redstone/edified_trapdoor.json | 32 +++ .../recipes/redstone/impetus/empty.json | 35 +++ .../advancement/recipes/tools/abacus.json | 32 +++ .../advancement/recipes/tools/artifact.json | 32 +++ .../advancement/recipes/tools/cypher.json | 32 +++ .../advancement/recipes/tools/focus.json | 32 +++ .../recipes/tools/focus_rotated.json | 32 +++ .../recipes/tools/jeweler_hammer.json | 32 +++ .../advancement/recipes/tools/lens.json | 32 +++ .../advancement/recipes/tools/spellbook.json | 43 ++++ .../recipes/tools/staff/acacia.json | 32 +++ .../recipes/tools/staff/bamboo.json | 32 +++ .../recipes/tools/staff/birch.json | 32 +++ .../recipes/tools/staff/cherry.json | 32 +++ .../recipes/tools/staff/crimson.json | 32 +++ .../recipes/tools/staff/dark_oak.json | 32 +++ .../recipes/tools/staff/edified.json | 32 +++ .../recipes/tools/staff/jungle.json | 32 +++ .../recipes/tools/staff/mangrove.json | 32 +++ .../recipes/tools/staff/mindsplice.json | 32 +++ .../advancement/recipes/tools/staff/oak.json | 32 +++ .../recipes/tools/staff/quenched.json | 32 +++ .../recipes/tools/staff/spruce.json | 32 +++ .../recipes/tools/staff/warped.json | 32 +++ .../recipes/tools/thought_knot.json | 32 +++ .../advancement/recipes/tools/trinket.json | 32 +++ .../data/hexcasting/advancement/root.json | 34 +++ .../advancement/y_u_no_cast_angy.json | 26 +++ .../data/hexcasting/damage_type/overcast.json | 5 + .../loot_modifiers/amethyst_cluster.json | 10 + .../cypher/hexcasting/random_cypher.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../cypher/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_corridor.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../lore/minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_desert_house.json | 10 + .../chests/village/village_plains_house.json | 10 + .../chests/village/village_savanna_house.json | 10 + .../chests/village/village_snowy_house.json | 10 + .../chests/village/village_taiga_house.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../scroll/hexcasting/random_scroll.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../scroll/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/bastion_other.json | 10 + .../minecraft/chests/bastion_treasure.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/end_city_treasure.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../minecraft/chests/shipwreck_map.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_cartographer.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../loot_table/blocks/akashic_bookshelf.json | 15 ++ .../loot_table/blocks/akashic_ligature.json | 15 ++ .../loot_table/blocks/akashic_record.json | 15 ++ .../loot_table/blocks/amethyst_bricks.json | 15 ++ .../blocks/amethyst_bricks_small.json | 15 ++ .../blocks/amethyst_dust_block.json | 15 ++ .../blocks/amethyst_edified_leaves.json | 41 ++++ .../loot_table/blocks/amethyst_pillar.json | 15 ++ .../loot_table/blocks/amethyst_sconce.json | 15 ++ .../loot_table/blocks/amethyst_tiles.json | 15 ++ .../blocks/ancient_scroll_paper.json | 15 ++ .../blocks/ancient_scroll_paper_lantern.json | 15 ++ .../blocks/aventurine_edified_leaves.json | 41 ++++ .../blocks/citrine_edified_leaves.json | 41 ++++ .../loot_table/blocks/directrix/boolean.json | 15 ++ .../loot_table/blocks/directrix/empty.json | 15 ++ .../loot_table/blocks/directrix/redstone.json | 15 ++ .../loot_table/blocks/edified_button.json | 15 ++ .../loot_table/blocks/edified_door.json | 24 ++ .../loot_table/blocks/edified_fence.json | 15 ++ .../loot_table/blocks/edified_fence_gate.json | 15 ++ .../loot_table/blocks/edified_log.json | 15 ++ .../blocks/edified_log_amethyst.json | 15 ++ .../blocks/edified_log_aventurine.json | 15 ++ .../blocks/edified_log_citrine.json | 15 ++ .../loot_table/blocks/edified_log_purple.json | 15 ++ .../loot_table/blocks/edified_panel.json | 15 ++ .../loot_table/blocks/edified_planks.json | 15 ++ .../blocks/edified_pressure_plate.json | 15 ++ .../loot_table/blocks/edified_slab.json | 34 +++ .../loot_table/blocks/edified_stairs.json | 15 ++ .../loot_table/blocks/edified_tile.json | 15 ++ .../loot_table/blocks/edified_trapdoor.json | 15 ++ .../loot_table/blocks/edified_wood.json | 15 ++ .../loot_table/blocks/impetus/empty.json | 15 ++ .../loot_table/blocks/impetus/look.json | 15 ++ .../loot_table/blocks/impetus/redstone.json | 15 ++ .../loot_table/blocks/impetus/rightclick.json | 15 ++ .../loot_table/blocks/quenched_allay.json | 69 ++++++ .../blocks/quenched_allay_bricks.json | 15 ++ .../blocks/quenched_allay_bricks_small.json | 15 ++ .../blocks/quenched_allay_tiles.json | 15 ++ .../loot_table/blocks/scroll_paper.json | 15 ++ .../blocks/scroll_paper_lantern.json | 15 ++ .../hexcasting/loot_table/blocks/slate.json | 24 ++ .../blocks/slate_amethyst_bricks.json | 15 ++ .../blocks/slate_amethyst_bricks_small.json | 15 ++ .../blocks/slate_amethyst_pillar.json | 15 ++ .../blocks/slate_amethyst_tiles.json | 15 ++ .../loot_table/blocks/slate_block.json | 15 ++ .../loot_table/blocks/slate_bricks.json | 15 ++ .../loot_table/blocks/slate_bricks_small.json | 15 ++ .../loot_table/blocks/slate_pillar.json | 15 ++ .../loot_table/blocks/slate_tiles.json | 15 ++ .../blocks/stripped_edified_log.json | 15 ++ .../blocks/stripped_edified_wood.json | 15 ++ .../loot_table/inject/amethyst_cluster.json | 211 ++++++++++++++++++ .../data/hexcasting/recipe/abacus.json | 24 ++ .../recipe/ageing_scroll_paper_lantern.json | 37 +++ .../hexcasting/recipe/akashic_bookshelf.json | 24 ++ .../hexcasting/recipe/akashic_ligature.json | 30 +++ .../hexcasting/recipe/amethyst_bricks.json | 17 ++ ...yst_bricks_from_amethyst_bricks_small.json | 13 ++ ...yst_bricks_small_from_amethyst_bricks.json | 13 ++ .../recipe/amethyst_dust_packing.json | 17 ++ .../recipe/amethyst_dust_unpacking.json | 13 ++ .../hexcasting/recipe/amethyst_pillar.json | 17 ++ .../hexcasting/recipe/amethyst_sconce.json | 20 ++ .../hexcasting/recipe/amethyst_tiles.json | 17 ++ .../hexcasting/recipe/ancient_colorizer.json | 21 ++ .../recipe/ancient_scroll_paper.json | 37 +++ .../recipe/ancient_scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/artifact.json | 24 ++ .../recipe/brainsweep/akashic_record.json | 16 ++ .../recipe/brainsweep/budding_amethyst.json | 15 ++ .../recipe/brainsweep/directrix_boolean.json | 21 ++ .../recipe/brainsweep/directrix_redstone.json | 21 ++ .../recipe/brainsweep/impetus_look.json | 20 ++ .../recipe/brainsweep/impetus_rightclick.json | 20 ++ .../brainsweep/impetus_storedplayer.json | 21 ++ .../recipe/brainsweep/quench_allay.json | 15 ++ .../data/hexcasting/recipe/cypher.json | 21 ++ .../decompose_quenched_shard/charged.json | 16 ++ .../recipe/decompose_quenched_shard/dust.json | 16 ++ .../decompose_quenched_shard/shard.json | 16 ++ .../hexcasting/recipe/default_colorizer.json | 21 ++ .../hexcasting/recipe/directrix/empty.json | 27 +++ .../recipe/dye_colorizer_black.json | 21 ++ .../hexcasting/recipe/dye_colorizer_blue.json | 21 ++ .../recipe/dye_colorizer_brown.json | 21 ++ .../hexcasting/recipe/dye_colorizer_cyan.json | 21 ++ .../hexcasting/recipe/dye_colorizer_gray.json | 21 ++ .../recipe/dye_colorizer_green.json | 21 ++ .../recipe/dye_colorizer_light_blue.json | 21 ++ .../recipe/dye_colorizer_light_gray.json | 21 ++ .../hexcasting/recipe/dye_colorizer_lime.json | 21 ++ .../recipe/dye_colorizer_magenta.json | 21 ++ .../recipe/dye_colorizer_orange.json | 21 ++ .../hexcasting/recipe/dye_colorizer_pink.json | 21 ++ .../recipe/dye_colorizer_purple.json | 21 ++ .../hexcasting/recipe/dye_colorizer_red.json | 21 ++ .../recipe/dye_colorizer_white.json | 21 ++ .../recipe/dye_colorizer_yellow.json | 21 ++ .../hexcasting/recipe/dynamicseal_focus.json | 4 + .../recipe/dynamicseal_spellbook.json | 4 + .../hexcasting/recipe/edified_button.json | 13 ++ .../data/hexcasting/recipe/edified_door.json | 18 ++ .../data/hexcasting/recipe/edified_fence.json | 20 ++ .../hexcasting/recipe/edified_fence_gate.json | 20 ++ .../data/hexcasting/recipe/edified_panel.json | 21 ++ .../hexcasting/recipe/edified_planks.json | 13 ++ .../recipe/edified_pressure_plate.json | 16 ++ .../data/hexcasting/recipe/edified_slab.json | 16 ++ .../hexcasting/recipe/edified_stairs.json | 18 ++ .../data/hexcasting/recipe/edified_tile.json | 18 ++ .../hexcasting/recipe/edified_trapdoor.json | 17 ++ .../data/hexcasting/recipe/edified_wood.json | 17 ++ .../data/hexcasting/recipe/focus.json | 27 +++ .../data/hexcasting/recipe/focus_rotated.json | 27 +++ .../data/hexcasting/recipe/impetus/empty.json | 27 +++ .../hexcasting/recipe/jeweler_hammer.json | 32 +++ .../data/hexcasting/recipe/lens.json | 21 ++ .../recipe/pride_colorizer_agender.json | 21 ++ .../recipe/pride_colorizer_aroace.json | 21 ++ .../recipe/pride_colorizer_aromantic.json | 21 ++ .../recipe/pride_colorizer_asexual.json | 21 ++ .../recipe/pride_colorizer_bisexual.json | 21 ++ .../recipe/pride_colorizer_demiboy.json | 21 ++ .../recipe/pride_colorizer_demigirl.json | 21 ++ .../recipe/pride_colorizer_gay.json | 21 ++ .../recipe/pride_colorizer_genderfluid.json | 21 ++ .../recipe/pride_colorizer_genderqueer.json | 21 ++ .../recipe/pride_colorizer_intersex.json | 21 ++ .../recipe/pride_colorizer_lesbian.json | 21 ++ .../recipe/pride_colorizer_nonbinary.json | 21 ++ .../recipe/pride_colorizer_plural.json | 21 ++ .../recipe/pride_colorizer_transgender.json | 21 ++ .../recipe/quenched_allay_bricks.json | 17 ++ ...icks_from_quenched_allay_bricks_small.json | 13 ++ ...icks_small_from_quenched_allay_bricks.json | 13 ++ .../recipe/quenched_allay_tiles.json | 17 ++ .../data/hexcasting/recipe/scroll.json | 21 ++ .../data/hexcasting/recipe/scroll_medium.json | 21 ++ .../data/hexcasting/recipe/scroll_paper.json | 24 ++ .../recipe/scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/scroll_small.json | 20 ++ .../data/hexcasting/recipe/slate.json | 20 ++ .../recipe/slate_amethyst_bricks.json | 16 ++ .../recipe/slate_amethyst_bricks_small.json | 16 ++ .../recipe/slate_amethyst_pillar.json | 16 ++ .../recipe/slate_amethyst_tiles.json | 16 ++ .../data/hexcasting/recipe/slate_block.json | 24 ++ .../recipe/slate_block_from_slates.json | 17 ++ .../data/hexcasting/recipe/slate_bricks.json | 17 ++ .../slate_bricks_from_slate_bricks_small.json | 13 ++ .../slate_bricks_small_from_slate_bricks.json | 13 ++ .../data/hexcasting/recipe/slate_pillar.json | 17 ++ .../data/hexcasting/recipe/slate_tiles.json | 17 ++ .../data/hexcasting/recipe/spellbook.json | 27 +++ .../data/hexcasting/recipe/staff/acacia.json | 24 ++ .../data/hexcasting/recipe/staff/bamboo.json | 24 ++ .../data/hexcasting/recipe/staff/birch.json | 24 ++ .../data/hexcasting/recipe/staff/cherry.json | 24 ++ .../data/hexcasting/recipe/staff/crimson.json | 24 ++ .../hexcasting/recipe/staff/dark_oak.json | 24 ++ .../data/hexcasting/recipe/staff/edified.json | 24 ++ .../data/hexcasting/recipe/staff/jungle.json | 24 ++ .../hexcasting/recipe/staff/mangrove.json | 24 ++ .../hexcasting/recipe/staff/mindsplice.json | 24 ++ .../data/hexcasting/recipe/staff/oak.json | 24 ++ .../hexcasting/recipe/staff/quenched.json | 24 ++ .../data/hexcasting/recipe/staff/spruce.json | 24 ++ .../data/hexcasting/recipe/staff/warped.json | 24 ++ .../recipe/stonecutting/amethyst_bricks.json | 10 + .../stonecutting/amethyst_bricks_small.json | 10 + .../recipe/stonecutting/amethyst_pillar.json | 10 + .../recipe/stonecutting/amethyst_tiles.json | 10 + .../stonecutting/quenched_allay_bricks.json | 10 + .../quenched_allay_bricks_small.json | 10 + .../stonecutting/quenched_allay_tiles.json | 10 + .../recipe/stonecutting/slate_bricks.json | 10 + .../stonecutting/slate_bricks_small.json | 10 + .../recipe/stonecutting/slate_pillar.json | 10 + .../recipe/stonecutting/slate_tiles.json | 10 + .../recipe/stripped_edified_wood.json | 17 ++ .../data/hexcasting/recipe/sub_sandwich.json | 27 +++ .../data/hexcasting/recipe/thought_knot.json | 16 ++ .../data/hexcasting/recipe/trinket.json | 21 ++ .../hexcasting/recipe/uuid_colorizer.json | 24 ++ .../tags/block/amethyst_blocks.json | 9 + .../block/brainswept_circle_components.json | 6 + .../tags/block/cheap_to_break_block.json | 6 + .../hexcasting/tags/block/directrices.json | 6 + .../hexcasting/tags/block/edified_logs.json | 12 + .../hexcasting/tags/block/edified_planks.json | 7 + .../data/hexcasting/tags/block/impeti.json | 7 + .../tags/block/quenched_allay_blocks.json | 8 + .../hexcasting/tags/block/slate_blocks.json | 9 + .../hexcasting/tags/block/water_plants.json | 8 + .../action/can_start_enlighten.json | 18 ++ .../hexcasting/action/per_world_pattern.json | 18 ++ .../action/requires_enlightenment.json | 18 ++ .../hexcasting/tags/item/amethyst_blocks.json | 9 + .../item/brainswept_circle_components.json | 6 + .../hexcasting/tags/item/directrices.json | 6 + .../hexcasting/tags/item/edified_logs.json | 12 + .../hexcasting/tags/item/edified_planks.json | 7 + .../tags/item/grants_root_advancement.json | 8 + .../data/hexcasting/tags/item/impeti.json | 7 + .../data/hexcasting/tags/item/phial_base.json | 5 + .../tags/item/quenched_allay_blocks.json | 8 + .../hexcasting/tags/item/seal_materials.json | 5 + .../hexcasting/tags/item/slate_blocks.json | 9 + .../data/hexcasting/tags/item/staves.json | 18 ++ .../data/minecraft/tags/block/buttons.json | 5 + .../tags/block/crystal_sound_blocks.json | 8 + .../data/minecraft/tags/block/doors.json | 5 + .../minecraft/tags/block/fence_gates.json | 5 + .../data/minecraft/tags/block/fences.json | 5 + .../data/minecraft/tags/block/leaves.json | 7 + .../data/minecraft/tags/block/logs.json | 12 + .../minecraft/tags/block/logs_that_burn.json | 12 + .../minecraft/tags/block/mineable/axe.json | 25 +++ .../minecraft/tags/block/mineable/hoe.json | 7 + .../tags/block/mineable/pickaxe.json | 30 +++ .../minecraft/tags/block/mineable/shovel.json | 5 + .../data/minecraft/tags/block/planks.json | 7 + .../minecraft/tags/block/pressure_plates.json | 5 + .../data/minecraft/tags/block/slabs.json | 5 + .../data/minecraft/tags/block/stairs.json | 5 + .../data/minecraft/tags/block/trapdoors.json | 5 + .../tags/block/unstable_bottom_center.json | 5 + .../minecraft/tags/block/wooden_buttons.json | 5 + .../minecraft/tags/block/wooden_doors.json | 5 + .../minecraft/tags/block/wooden_fences.json | 6 + .../tags/block/wooden_pressure_plates.json | 5 + .../minecraft/tags/block/wooden_slabs.json | 5 + .../minecraft/tags/block/wooden_stairs.json | 5 + .../tags/block/wooden_trapdoors.json | 5 + .../tags/damage_type/bypasses_armor.json | 5 + .../tags/damage_type/bypasses_effects.json | 5 + .../tags/damage_type/bypasses_shield.json | 5 + .../data/minecraft/tags/item/buttons.json | 5 + .../data/minecraft/tags/item/doors.json | 5 + .../data/minecraft/tags/item/leaves.json | 7 + .../data/minecraft/tags/item/logs.json | 12 + .../minecraft/tags/item/logs_that_burn.json | 12 + .../data/minecraft/tags/item/planks.json | 7 + .../data/minecraft/tags/item/slabs.json | 5 + .../data/minecraft/tags/item/trapdoors.json | 5 + .../minecraft/tags/item/wooden_buttons.json | 5 + .../minecraft/tags/item/wooden_doors.json | 5 + .../tags/item/wooden_pressure_plates.json | 5 + .../minecraft/tags/item/wooden_slabs.json | 5 + .../minecraft/tags/item/wooden_trapdoors.json | 5 + .../loot_modifiers/global_loot_modifiers.json | 39 ++++ .../data/c/tags/item/amethyst_dusts.json | 5 + .../resources/data/c/tags/item/gems.json | 5 + .../data/create/tags/block/brittle.json | 8 + .../recipes/brainsweep/akashic_record.json | 35 +++ .../recipes/brainsweep/budding_amethyst.json | 35 +++ .../recipes/brainsweep/directrix_boolean.json | 35 +++ .../brainsweep/directrix_redstone.json | 35 +++ .../recipes/brainsweep/impetus_look.json | 35 +++ .../brainsweep/impetus_rightclick.json | 35 +++ .../brainsweep/impetus_storedplayer.json | 35 +++ .../recipes/brainsweep/quench_allay.json | 35 +++ .../building_blocks/amethyst_bricks.json | 32 +++ ...yst_bricks_from_amethyst_bricks_small.json | 32 +++ ...yst_bricks_small_from_amethyst_bricks.json | 32 +++ .../amethyst_dust_packing.json | 32 +++ .../amethyst_dust_unpacking.json | 32 +++ .../building_blocks/amethyst_pillar.json | 32 +++ .../building_blocks/amethyst_tiles.json | 32 +++ .../building_blocks/ancient_scroll_paper.json | 32 +++ .../building_blocks/edified_fence.json | 32 +++ .../building_blocks/edified_fence_gate.json | 32 +++ .../building_blocks/edified_panel.json | 32 +++ .../building_blocks/edified_planks.json | 32 +++ .../recipes/building_blocks/edified_slab.json | 32 +++ .../building_blocks/edified_stairs.json | 32 +++ .../recipes/building_blocks/edified_tile.json | 32 +++ .../recipes/building_blocks/edified_wood.json | 32 +++ .../quenched_allay_bricks.json | 32 +++ ...icks_from_quenched_allay_bricks_small.json | 32 +++ ...icks_small_from_quenched_allay_bricks.json | 32 +++ .../building_blocks/quenched_allay_tiles.json | 32 +++ .../recipes/building_blocks/scroll_paper.json | 32 +++ .../slate_amethyst_bricks.json | 32 +++ .../slate_amethyst_bricks_small.json | 32 +++ .../slate_amethyst_pillar.json | 32 +++ .../building_blocks/slate_amethyst_tiles.json | 32 +++ .../recipes/building_blocks/slate_block.json | 32 +++ .../slate_block_from_slates.json | 32 +++ .../recipes/building_blocks/slate_bricks.json | 32 +++ .../slate_bricks_from_slate_bricks_small.json | 32 +++ .../slate_bricks_small_from_slate_bricks.json | 32 +++ .../recipes/building_blocks/slate_pillar.json | 32 +++ .../recipes/building_blocks/slate_tiles.json | 32 +++ .../stonecutting/amethyst_bricks.json | 32 +++ .../stonecutting/amethyst_bricks_small.json | 32 +++ .../stonecutting/amethyst_pillar.json | 32 +++ .../stonecutting/amethyst_tiles.json | 32 +++ .../stonecutting/quenched_allay_bricks.json | 32 +++ .../quenched_allay_bricks_small.json | 32 +++ .../stonecutting/quenched_allay_tiles.json | 32 +++ .../stonecutting/slate_bricks.json | 32 +++ .../stonecutting/slate_bricks_small.json | 32 +++ .../stonecutting/slate_pillar.json | 32 +++ .../stonecutting/slate_tiles.json | 32 +++ .../stripped_edified_wood.json | 32 +++ .../ageing_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/amethyst_sconce.json | 32 +++ .../ancient_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll.json | 32 +++ .../recipes/decorations/scroll_medium.json | 32 +++ .../decorations/scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll_small.json | 32 +++ .../recipes/decorations/slate.json | 32 +++ .../recipes/food/sub_sandwich.json | 32 +++ .../recipes/misc/ancient_colorizer.json | 32 +++ .../decompose_quenched_shard/charged.json | 32 +++ .../misc/decompose_quenched_shard/dust.json | 32 +++ .../misc/decompose_quenched_shard/shard.json | 32 +++ .../recipes/misc/default_colorizer.json | 32 +++ .../recipes/misc/dye_colorizer_black.json | 32 +++ .../recipes/misc/dye_colorizer_blue.json | 32 +++ .../recipes/misc/dye_colorizer_brown.json | 32 +++ .../recipes/misc/dye_colorizer_cyan.json | 32 +++ .../recipes/misc/dye_colorizer_gray.json | 32 +++ .../recipes/misc/dye_colorizer_green.json | 32 +++ .../misc/dye_colorizer_light_blue.json | 32 +++ .../misc/dye_colorizer_light_gray.json | 32 +++ .../recipes/misc/dye_colorizer_lime.json | 32 +++ .../recipes/misc/dye_colorizer_magenta.json | 32 +++ .../recipes/misc/dye_colorizer_orange.json | 32 +++ .../recipes/misc/dye_colorizer_pink.json | 32 +++ .../recipes/misc/dye_colorizer_purple.json | 32 +++ .../recipes/misc/dye_colorizer_red.json | 32 +++ .../recipes/misc/dye_colorizer_white.json | 32 +++ .../recipes/misc/dye_colorizer_yellow.json | 32 +++ .../recipes/misc/pride_colorizer_agender.json | 32 +++ .../recipes/misc/pride_colorizer_aroace.json | 32 +++ .../misc/pride_colorizer_aromantic.json | 32 +++ .../recipes/misc/pride_colorizer_asexual.json | 32 +++ .../misc/pride_colorizer_bisexual.json | 32 +++ .../recipes/misc/pride_colorizer_demiboy.json | 32 +++ .../misc/pride_colorizer_demigirl.json | 32 +++ .../recipes/misc/pride_colorizer_gay.json | 32 +++ .../misc/pride_colorizer_genderfluid.json | 32 +++ .../misc/pride_colorizer_genderqueer.json | 32 +++ .../misc/pride_colorizer_intersex.json | 32 +++ .../recipes/misc/pride_colorizer_lesbian.json | 32 +++ .../misc/pride_colorizer_nonbinary.json | 32 +++ .../recipes/misc/pride_colorizer_plural.json | 32 +++ .../misc/pride_colorizer_transgender.json | 32 +++ .../recipes/misc/uuid_colorizer.json | 32 +++ .../recipes/redstone/akashic_bookshelf.json | 35 +++ .../recipes/redstone/akashic_ligature.json | 35 +++ .../recipes/redstone/directrix/empty.json | 35 +++ .../recipes/redstone/edified_button.json | 32 +++ .../recipes/redstone/edified_door.json | 32 +++ .../redstone/edified_pressure_plate.json | 32 +++ .../recipes/redstone/edified_trapdoor.json | 32 +++ .../recipes/redstone/impetus/empty.json | 35 +++ .../advancement/recipes/tools/abacus.json | 32 +++ .../advancement/recipes/tools/artifact.json | 32 +++ .../advancement/recipes/tools/cypher.json | 32 +++ .../advancement/recipes/tools/focus.json | 32 +++ .../recipes/tools/focus_rotated.json | 32 +++ .../recipes/tools/jeweler_hammer.json | 32 +++ .../advancement/recipes/tools/lens.json | 32 +++ .../advancement/recipes/tools/spellbook.json | 43 ++++ .../recipes/tools/staff/acacia.json | 32 +++ .../recipes/tools/staff/bamboo.json | 32 +++ .../recipes/tools/staff/birch.json | 32 +++ .../recipes/tools/staff/cherry.json | 32 +++ .../recipes/tools/staff/crimson.json | 32 +++ .../recipes/tools/staff/dark_oak.json | 32 +++ .../recipes/tools/staff/edified.json | 32 +++ .../recipes/tools/staff/jungle.json | 32 +++ .../recipes/tools/staff/mangrove.json | 32 +++ .../recipes/tools/staff/mindsplice.json | 32 +++ .../advancement/recipes/tools/staff/oak.json | 32 +++ .../recipes/tools/staff/quenched.json | 32 +++ .../recipes/tools/staff/spruce.json | 32 +++ .../recipes/tools/staff/warped.json | 32 +++ .../recipes/tools/thought_knot.json | 32 +++ .../advancement/recipes/tools/trinket.json | 32 +++ .../loot_table/blocks/akashic_bookshelf.json | 15 ++ .../loot_table/blocks/akashic_ligature.json | 15 ++ .../loot_table/blocks/akashic_record.json | 15 ++ .../loot_table/blocks/amethyst_bricks.json | 15 ++ .../blocks/amethyst_bricks_small.json | 15 ++ .../blocks/amethyst_dust_block.json | 15 ++ .../blocks/amethyst_edified_leaves.json | 54 +++++ .../loot_table/blocks/amethyst_pillar.json | 15 ++ .../loot_table/blocks/amethyst_sconce.json | 15 ++ .../loot_table/blocks/amethyst_tiles.json | 15 ++ .../blocks/ancient_scroll_paper.json | 15 ++ .../blocks/ancient_scroll_paper_lantern.json | 15 ++ .../blocks/aventurine_edified_leaves.json | 54 +++++ .../blocks/citrine_edified_leaves.json | 54 +++++ .../loot_table/blocks/directrix/boolean.json | 15 ++ .../loot_table/blocks/directrix/empty.json | 15 ++ .../loot_table/blocks/directrix/redstone.json | 15 ++ .../loot_table/blocks/edified_button.json | 15 ++ .../loot_table/blocks/edified_door.json | 24 ++ .../loot_table/blocks/edified_fence.json | 15 ++ .../loot_table/blocks/edified_fence_gate.json | 15 ++ .../loot_table/blocks/edified_log.json | 15 ++ .../blocks/edified_log_amethyst.json | 15 ++ .../blocks/edified_log_aventurine.json | 15 ++ .../blocks/edified_log_citrine.json | 15 ++ .../loot_table/blocks/edified_log_purple.json | 15 ++ .../loot_table/blocks/edified_panel.json | 15 ++ .../loot_table/blocks/edified_planks.json | 15 ++ .../blocks/edified_pressure_plate.json | 15 ++ .../loot_table/blocks/edified_slab.json | 34 +++ .../loot_table/blocks/edified_stairs.json | 15 ++ .../loot_table/blocks/edified_tile.json | 15 ++ .../loot_table/blocks/edified_trapdoor.json | 15 ++ .../loot_table/blocks/edified_wood.json | 15 ++ .../loot_table/blocks/impetus/empty.json | 15 ++ .../loot_table/blocks/impetus/look.json | 15 ++ .../loot_table/blocks/impetus/redstone.json | 15 ++ .../loot_table/blocks/impetus/rightclick.json | 15 ++ .../loot_table/blocks/quenched_allay.json | 69 ++++++ .../blocks/quenched_allay_bricks.json | 15 ++ .../blocks/quenched_allay_bricks_small.json | 15 ++ .../blocks/quenched_allay_tiles.json | 15 ++ .../loot_table/blocks/scroll_paper.json | 15 ++ .../blocks/scroll_paper_lantern.json | 15 ++ .../hexcasting/loot_table/blocks/slate.json | 24 ++ .../blocks/slate_amethyst_bricks.json | 15 ++ .../blocks/slate_amethyst_bricks_small.json | 15 ++ .../blocks/slate_amethyst_pillar.json | 15 ++ .../blocks/slate_amethyst_tiles.json | 15 ++ .../loot_table/blocks/slate_block.json | 15 ++ .../loot_table/blocks/slate_bricks.json | 15 ++ .../loot_table/blocks/slate_bricks_small.json | 15 ++ .../loot_table/blocks/slate_pillar.json | 15 ++ .../loot_table/blocks/slate_tiles.json | 15 ++ .../blocks/stripped_edified_log.json | 15 ++ .../blocks/stripped_edified_wood.json | 15 ++ .../loot_table/inject/amethyst_cluster.json | 211 ++++++++++++++++++ .../data/hexcasting/recipe/abacus.json | 24 ++ .../recipe/ageing_scroll_paper_lantern.json | 45 ++++ .../hexcasting/recipe/akashic_bookshelf.json | 24 ++ .../hexcasting/recipe/akashic_ligature.json | 30 +++ .../hexcasting/recipe/amethyst_bricks.json | 17 ++ ...yst_bricks_from_amethyst_bricks_small.json | 13 ++ ...yst_bricks_small_from_amethyst_bricks.json | 13 ++ .../recipe/amethyst_dust_packing.json | 17 ++ .../recipe/amethyst_dust_unpacking.json | 13 ++ .../hexcasting/recipe/amethyst_pillar.json | 17 ++ .../hexcasting/recipe/amethyst_sconce.json | 25 +++ .../hexcasting/recipe/amethyst_tiles.json | 17 ++ .../hexcasting/recipe/ancient_colorizer.json | 21 ++ .../recipe/ancient_scroll_paper.json | 45 ++++ .../recipe/ancient_scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/artifact.json | 29 +++ .../recipe/brainsweep/akashic_record.json | 16 ++ .../recipe/brainsweep/budding_amethyst.json | 15 ++ .../recipe/brainsweep/directrix_boolean.json | 21 ++ .../recipe/brainsweep/directrix_redstone.json | 21 ++ .../recipe/brainsweep/impetus_look.json | 20 ++ .../recipe/brainsweep/impetus_rightclick.json | 20 ++ .../brainsweep/impetus_storedplayer.json | 21 ++ .../recipe/brainsweep/quench_allay.json | 15 ++ .../data/hexcasting/recipe/cypher.json | 26 +++ .../decompose_quenched_shard/charged.json | 16 ++ .../recipe/decompose_quenched_shard/dust.json | 16 ++ .../decompose_quenched_shard/shard.json | 16 ++ .../hexcasting/recipe/default_colorizer.json | 21 ++ .../hexcasting/recipe/directrix/empty.json | 27 +++ .../recipe/dye_colorizer_black.json | 21 ++ .../hexcasting/recipe/dye_colorizer_blue.json | 21 ++ .../recipe/dye_colorizer_brown.json | 21 ++ .../hexcasting/recipe/dye_colorizer_cyan.json | 21 ++ .../hexcasting/recipe/dye_colorizer_gray.json | 21 ++ .../recipe/dye_colorizer_green.json | 21 ++ .../recipe/dye_colorizer_light_blue.json | 21 ++ .../recipe/dye_colorizer_light_gray.json | 21 ++ .../hexcasting/recipe/dye_colorizer_lime.json | 21 ++ .../recipe/dye_colorizer_magenta.json | 21 ++ .../recipe/dye_colorizer_orange.json | 21 ++ .../hexcasting/recipe/dye_colorizer_pink.json | 21 ++ .../recipe/dye_colorizer_purple.json | 21 ++ .../hexcasting/recipe/dye_colorizer_red.json | 21 ++ .../recipe/dye_colorizer_white.json | 21 ++ .../recipe/dye_colorizer_yellow.json | 21 ++ .../hexcasting/recipe/dynamicseal_focus.json | 4 + .../recipe/dynamicseal_spellbook.json | 4 + .../hexcasting/recipe/edified_button.json | 13 ++ .../data/hexcasting/recipe/edified_door.json | 18 ++ .../data/hexcasting/recipe/edified_fence.json | 20 ++ .../hexcasting/recipe/edified_fence_gate.json | 20 ++ .../data/hexcasting/recipe/edified_panel.json | 21 ++ .../hexcasting/recipe/edified_planks.json | 13 ++ .../recipe/edified_pressure_plate.json | 16 ++ .../data/hexcasting/recipe/edified_slab.json | 16 ++ .../hexcasting/recipe/edified_stairs.json | 18 ++ .../data/hexcasting/recipe/edified_tile.json | 18 ++ .../hexcasting/recipe/edified_trapdoor.json | 17 ++ .../data/hexcasting/recipe/edified_wood.json | 17 ++ .../data/hexcasting/recipe/focus.json | 32 +++ .../data/hexcasting/recipe/focus_rotated.json | 32 +++ .../data/hexcasting/recipe/impetus/empty.json | 27 +++ .../hexcasting/recipe/jeweler_hammer.json | 42 ++++ .../data/hexcasting/recipe/lens.json | 21 ++ .../recipe/pride_colorizer_agender.json | 21 ++ .../recipe/pride_colorizer_aroace.json | 21 ++ .../recipe/pride_colorizer_aromantic.json | 21 ++ .../recipe/pride_colorizer_asexual.json | 21 ++ .../recipe/pride_colorizer_bisexual.json | 21 ++ .../recipe/pride_colorizer_demiboy.json | 21 ++ .../recipe/pride_colorizer_demigirl.json | 21 ++ .../recipe/pride_colorizer_gay.json | 21 ++ .../recipe/pride_colorizer_genderfluid.json | 21 ++ .../recipe/pride_colorizer_genderqueer.json | 21 ++ .../recipe/pride_colorizer_intersex.json | 21 ++ .../recipe/pride_colorizer_lesbian.json | 21 ++ .../recipe/pride_colorizer_nonbinary.json | 21 ++ .../recipe/pride_colorizer_plural.json | 21 ++ .../recipe/pride_colorizer_transgender.json | 21 ++ .../recipe/quenched_allay_bricks.json | 17 ++ ...icks_from_quenched_allay_bricks_small.json | 13 ++ ...icks_small_from_quenched_allay_bricks.json | 13 ++ .../recipe/quenched_allay_tiles.json | 17 ++ .../data/hexcasting/recipe/scroll.json | 21 ++ .../data/hexcasting/recipe/scroll_medium.json | 21 ++ .../data/hexcasting/recipe/scroll_paper.json | 24 ++ .../recipe/scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/scroll_small.json | 20 ++ .../data/hexcasting/recipe/slate.json | 20 ++ .../recipe/slate_amethyst_bricks.json | 16 ++ .../recipe/slate_amethyst_bricks_small.json | 16 ++ .../recipe/slate_amethyst_pillar.json | 16 ++ .../recipe/slate_amethyst_tiles.json | 16 ++ .../data/hexcasting/recipe/slate_block.json | 24 ++ .../recipe/slate_block_from_slates.json | 17 ++ .../data/hexcasting/recipe/slate_bricks.json | 17 ++ .../slate_bricks_from_slate_bricks_small.json | 13 ++ .../slate_bricks_small_from_slate_bricks.json | 13 ++ .../data/hexcasting/recipe/slate_pillar.json | 17 ++ .../data/hexcasting/recipe/slate_tiles.json | 17 ++ .../data/hexcasting/recipe/spellbook.json | 32 +++ .../data/hexcasting/recipe/staff/acacia.json | 24 ++ .../data/hexcasting/recipe/staff/bamboo.json | 24 ++ .../data/hexcasting/recipe/staff/birch.json | 24 ++ .../data/hexcasting/recipe/staff/cherry.json | 24 ++ .../data/hexcasting/recipe/staff/crimson.json | 24 ++ .../hexcasting/recipe/staff/dark_oak.json | 24 ++ .../data/hexcasting/recipe/staff/edified.json | 24 ++ .../data/hexcasting/recipe/staff/jungle.json | 24 ++ .../hexcasting/recipe/staff/mangrove.json | 24 ++ .../hexcasting/recipe/staff/mindsplice.json | 24 ++ .../data/hexcasting/recipe/staff/oak.json | 24 ++ .../hexcasting/recipe/staff/quenched.json | 24 ++ .../data/hexcasting/recipe/staff/spruce.json | 24 ++ .../data/hexcasting/recipe/staff/warped.json | 24 ++ .../recipe/stonecutting/amethyst_bricks.json | 10 + .../stonecutting/amethyst_bricks_small.json | 10 + .../recipe/stonecutting/amethyst_pillar.json | 10 + .../recipe/stonecutting/amethyst_tiles.json | 10 + .../stonecutting/quenched_allay_bricks.json | 10 + .../quenched_allay_bricks_small.json | 10 + .../stonecutting/quenched_allay_tiles.json | 10 + .../recipe/stonecutting/slate_bricks.json | 10 + .../stonecutting/slate_bricks_small.json | 10 + .../recipe/stonecutting/slate_pillar.json | 10 + .../recipe/stonecutting/slate_tiles.json | 10 + .../recipe/stripped_edified_wood.json | 17 ++ .../data/hexcasting/recipe/sub_sandwich.json | 27 +++ .../data/hexcasting/recipe/thought_knot.json | 16 ++ .../data/hexcasting/recipe/trinket.json | 26 +++ .../hexcasting/recipe/uuid_colorizer.json | 24 ++ .../tags/block/amethyst_blocks.json | 9 + .../block/brainswept_circle_components.json | 6 + .../tags/block/cheap_to_break_block.json | 6 + .../hexcasting/tags/block/directrices.json | 6 + .../hexcasting/tags/block/edified_logs.json | 12 + .../hexcasting/tags/block/edified_planks.json | 7 + .../data/hexcasting/tags/block/impeti.json | 7 + .../tags/block/quenched_allay_blocks.json | 8 + .../hexcasting/tags/block/slate_blocks.json | 9 + .../hexcasting/tags/block/water_plants.json | 8 + .../action/can_start_enlighten.json | 18 ++ .../hexcasting/action/per_world_pattern.json | 18 ++ .../action/requires_enlightenment.json | 18 ++ .../hexcasting/tags/item/amethyst_blocks.json | 9 + .../item/brainswept_circle_components.json | 6 + .../hexcasting/tags/item/directrices.json | 6 + .../hexcasting/tags/item/edified_logs.json | 12 + .../hexcasting/tags/item/edified_planks.json | 7 + .../tags/item/grants_root_advancement.json | 8 + .../data/hexcasting/tags/item/impeti.json | 7 + .../data/hexcasting/tags/item/phial_base.json | 5 + .../tags/item/quenched_allay_blocks.json | 8 + .../hexcasting/tags/item/seal_materials.json | 5 + .../hexcasting/tags/item/slate_blocks.json | 9 + .../data/hexcasting/tags/item/staves.json | 18 ++ .../data/minecraft/tags/block/buttons.json | 5 + .../tags/block/crystal_sound_blocks.json | 8 + .../data/minecraft/tags/block/doors.json | 5 + .../minecraft/tags/block/fence_gates.json | 5 + .../data/minecraft/tags/block/fences.json | 5 + .../data/minecraft/tags/block/leaves.json | 7 + .../data/minecraft/tags/block/logs.json | 12 + .../minecraft/tags/block/logs_that_burn.json | 12 + .../minecraft/tags/block/mineable/axe.json | 25 +++ .../minecraft/tags/block/mineable/hoe.json | 7 + .../tags/block/mineable/pickaxe.json | 30 +++ .../minecraft/tags/block/mineable/shovel.json | 5 + .../data/minecraft/tags/block/planks.json | 7 + .../minecraft/tags/block/pressure_plates.json | 5 + .../data/minecraft/tags/block/slabs.json | 5 + .../data/minecraft/tags/block/stairs.json | 5 + .../data/minecraft/tags/block/trapdoors.json | 5 + .../tags/block/unstable_bottom_center.json | 5 + .../minecraft/tags/block/wooden_buttons.json | 5 + .../minecraft/tags/block/wooden_doors.json | 5 + .../minecraft/tags/block/wooden_fences.json | 6 + .../tags/block/wooden_pressure_plates.json | 5 + .../minecraft/tags/block/wooden_slabs.json | 5 + .../minecraft/tags/block/wooden_stairs.json | 5 + .../tags/block/wooden_trapdoors.json | 5 + .../data/minecraft/tags/item/buttons.json | 5 + .../data/minecraft/tags/item/doors.json | 5 + .../data/minecraft/tags/item/leaves.json | 7 + .../data/minecraft/tags/item/logs.json | 12 + .../minecraft/tags/item/logs_that_burn.json | 12 + .../data/minecraft/tags/item/planks.json | 7 + .../data/minecraft/tags/item/slabs.json | 5 + .../data/minecraft/tags/item/trapdoors.json | 5 + .../minecraft/tags/item/wooden_buttons.json | 5 + .../minecraft/tags/item/wooden_doors.json | 5 + .../tags/item/wooden_pressure_plates.json | 5 + .../minecraft/tags/item/wooden_slabs.json | 5 + .../minecraft/tags/item/wooden_trapdoors.json | 5 + .../blockstates/akashic_bookshelf.json | 107 +++++++++ .../blockstates/akashic_ligature.json | 7 + .../blockstates/akashic_record.json | 7 + .../blockstates/amethyst_bricks.json | 7 + .../blockstates/amethyst_bricks_small.json | 7 + .../blockstates/amethyst_dust_block.json | 7 + .../blockstates/amethyst_edified_leaves.json | 7 + .../blockstates/amethyst_pillar.json | 30 +++ .../blockstates/amethyst_sconce.json | 56 +++++ .../blockstates/amethyst_tiles.json | 7 + .../blockstates/ancient_scroll_paper.json | 7 + .../ancient_scroll_paper_lantern.json | 7 + .../aventurine_edified_leaves.json | 7 + .../blockstates/citrine_edified_leaves.json | 7 + .../blockstates/conjured_block.json | 7 + .../blockstates/conjured_light.json | 7 + .../blockstates/directrix/boolean.json | 142 ++++++++++++ .../blockstates/directrix/empty.json | 50 +++++ .../blockstates/directrix/redstone.json | 96 ++++++++ .../blockstates/edified_button.json | 118 ++++++++++ .../hexcasting/blockstates/edified_door.json | 124 ++++++++++ .../hexcasting/blockstates/edified_fence.json | 48 ++++ .../blockstates/edified_fence_gate.json | 80 +++++++ .../hexcasting/blockstates/edified_log.json | 16 ++ .../blockstates/edified_log_amethyst.json | 16 ++ .../blockstates/edified_log_aventurine.json | 16 ++ .../blockstates/edified_log_citrine.json | 16 ++ .../blockstates/edified_log_purple.json | 16 ++ .../hexcasting/blockstates/edified_panel.json | 7 + .../blockstates/edified_planks.json | 17 ++ .../blockstates/edified_pressure_plate.json | 10 + .../hexcasting/blockstates/edified_slab.json | 13 ++ .../blockstates/edified_stairs.json | 209 +++++++++++++++++ .../hexcasting/blockstates/edified_tile.json | 7 + .../blockstates/edified_trapdoor.json | 68 ++++++ .../hexcasting/blockstates/edified_wood.json | 16 ++ .../hexcasting/blockstates/impetus/empty.json | 50 +++++ .../hexcasting/blockstates/impetus/look.json | 50 +++++ .../blockstates/impetus/redstone.json | 96 ++++++++ .../blockstates/impetus/rightclick.json | 50 +++++ .../blockstates/quenched_allay.json | 7 + .../blockstates/quenched_allay_bricks.json | 7 + .../quenched_allay_bricks_small.json | 7 + .../blockstates/quenched_allay_tiles.json | 7 + .../hexcasting/blockstates/scroll_paper.json | 7 + .../blockstates/scroll_paper_lantern.json | 7 + .../assets/hexcasting/blockstates/slate.json | 122 ++++++++++ .../blockstates/slate_amethyst_bricks.json | 15 ++ .../slate_amethyst_bricks_small.json | 15 ++ .../blockstates/slate_amethyst_pillar.json | 16 ++ .../blockstates/slate_amethyst_tiles.json | 7 + .../hexcasting/blockstates/slate_block.json | 7 + .../hexcasting/blockstates/slate_bricks.json | 7 + .../blockstates/slate_bricks_small.json | 7 + .../hexcasting/blockstates/slate_pillar.json | 16 ++ .../hexcasting/blockstates/slate_tiles.json | 7 + .../blockstates/stripped_edified_log.json | 16 ++ .../blockstates/stripped_edified_wood.json | 16 ++ .../models/block/akashic_bookshelf.json | 68 ++++++ .../models/block/akashic_bookshelf_1.json | 6 + .../models/block/akashic_bookshelf_2.json | 6 + .../models/block/akashic_bookshelf_3.json | 6 + .../models/block/akashic_bookshelf_4.json | 6 + .../models/block/akashic_bookshelf_empty.json | 8 + .../models/block/akashic_ligature.json | 6 + .../models/block/akashic_record.json | 87 ++++++++ .../models/block/amethyst_dust_block.json | 6 + .../models/block/amethyst_edified_leaves.json | 7 + .../models/block/ancient_scroll_paper.json | 6 + .../block/ancient_scroll_paper_lantern.json | 8 + .../block/aventurine_edified_leaves.json | 7 + .../directrix/boolean/dim_false_down.json | 12 + .../directrix/boolean/dim_false_east.json | 12 + .../directrix/boolean/dim_false_north.json | 12 + .../directrix/boolean/dim_false_south.json | 12 + .../directrix/boolean/dim_false_up.json | 12 + .../directrix/boolean/dim_false_west.json | 12 + .../directrix/boolean/dim_neither_down.json | 12 + .../directrix/boolean/dim_neither_east.json | 12 + .../directrix/boolean/dim_neither_north.json | 12 + .../directrix/boolean/dim_neither_south.json | 12 + .../directrix/boolean/dim_neither_up.json | 12 + .../directrix/boolean/dim_neither_west.json | 12 + .../directrix/boolean/dim_true_down.json | 12 + .../directrix/boolean/dim_true_east.json | 12 + .../directrix/boolean/dim_true_north.json | 12 + .../directrix/boolean/dim_true_south.json | 12 + .../circle/directrix/boolean/dim_true_up.json | 12 + .../directrix/boolean/dim_true_west.json | 12 + .../directrix/boolean/lit_false_down.json | 12 + .../directrix/boolean/lit_false_east.json | 12 + .../directrix/boolean/lit_false_north.json | 12 + .../directrix/boolean/lit_false_south.json | 12 + .../directrix/boolean/lit_false_up.json | 12 + .../directrix/boolean/lit_false_west.json | 12 + .../directrix/boolean/lit_neither_down.json | 12 + .../directrix/boolean/lit_neither_east.json | 12 + .../directrix/boolean/lit_neither_north.json | 12 + .../directrix/boolean/lit_neither_south.json | 12 + .../directrix/boolean/lit_neither_up.json | 12 + .../directrix/boolean/lit_neither_west.json | 12 + .../directrix/boolean/lit_true_down.json | 12 + .../directrix/boolean/lit_true_east.json | 12 + .../directrix/boolean/lit_true_north.json | 12 + .../directrix/boolean/lit_true_south.json | 12 + .../circle/directrix/boolean/lit_true_up.json | 12 + .../directrix/boolean/lit_true_west.json | 12 + .../circle/directrix/empty/dim_down.json | 12 + .../circle/directrix/empty/dim_east.json | 12 + .../circle/directrix/empty/dim_north.json | 12 + .../circle/directrix/empty/dim_south.json | 12 + .../block/circle/directrix/empty/dim_up.json | 12 + .../circle/directrix/empty/dim_west.json | 12 + .../circle/directrix/empty/lit_down.json | 12 + .../circle/directrix/empty/lit_east.json | 12 + .../circle/directrix/empty/lit_north.json | 12 + .../circle/directrix/empty/lit_south.json | 12 + .../block/circle/directrix/empty/lit_up.json | 12 + .../circle/directrix/empty/lit_west.json | 12 + .../directrix/redstone/dim_powered_down.json | 12 + .../directrix/redstone/dim_powered_east.json | 12 + .../directrix/redstone/dim_powered_north.json | 12 + .../directrix/redstone/dim_powered_south.json | 12 + .../directrix/redstone/dim_powered_up.json | 12 + .../directrix/redstone/dim_powered_west.json | 12 + .../redstone/dim_unpowered_down.json | 12 + .../redstone/dim_unpowered_east.json | 12 + .../redstone/dim_unpowered_north.json | 12 + .../redstone/dim_unpowered_south.json | 12 + .../directrix/redstone/dim_unpowered_up.json | 12 + .../redstone/dim_unpowered_west.json | 12 + .../directrix/redstone/lit_powered_down.json | 12 + .../directrix/redstone/lit_powered_east.json | 12 + .../directrix/redstone/lit_powered_north.json | 12 + .../directrix/redstone/lit_powered_south.json | 12 + .../directrix/redstone/lit_powered_up.json | 12 + .../directrix/redstone/lit_powered_west.json | 12 + .../redstone/lit_unpowered_down.json | 12 + .../redstone/lit_unpowered_east.json | 12 + .../redstone/lit_unpowered_north.json | 12 + .../redstone/lit_unpowered_south.json | 12 + .../directrix/redstone/lit_unpowered_up.json | 12 + .../redstone/lit_unpowered_west.json | 12 + .../block/circle/impetus/empty/dim_down.json | 12 + .../block/circle/impetus/empty/dim_east.json | 12 + .../block/circle/impetus/empty/dim_north.json | 12 + .../block/circle/impetus/empty/dim_south.json | 12 + .../block/circle/impetus/empty/dim_up.json | 12 + .../block/circle/impetus/empty/dim_west.json | 12 + .../block/circle/impetus/empty/lit_down.json | 12 + .../block/circle/impetus/empty/lit_east.json | 12 + .../block/circle/impetus/empty/lit_north.json | 12 + .../block/circle/impetus/empty/lit_south.json | 12 + .../block/circle/impetus/empty/lit_up.json | 12 + .../block/circle/impetus/empty/lit_west.json | 12 + .../block/circle/impetus/look/dim_down.json | 12 + .../block/circle/impetus/look/dim_east.json | 12 + .../block/circle/impetus/look/dim_north.json | 12 + .../block/circle/impetus/look/dim_south.json | 12 + .../block/circle/impetus/look/dim_up.json | 12 + .../block/circle/impetus/look/dim_west.json | 12 + .../block/circle/impetus/look/lit_down.json | 12 + .../block/circle/impetus/look/lit_east.json | 12 + .../block/circle/impetus/look/lit_north.json | 12 + .../block/circle/impetus/look/lit_south.json | 12 + .../block/circle/impetus/look/lit_up.json | 12 + .../block/circle/impetus/look/lit_west.json | 12 + .../circle/impetus/redstone/dim_down.json | 12 + .../circle/impetus/redstone/dim_east.json | 12 + .../circle/impetus/redstone/dim_north.json | 12 + .../circle/impetus/redstone/dim_south.json | 12 + .../block/circle/impetus/redstone/dim_up.json | 12 + .../circle/impetus/redstone/dim_west.json | 12 + .../circle/impetus/redstone/lit_down.json | 12 + .../circle/impetus/redstone/lit_east.json | 12 + .../circle/impetus/redstone/lit_north.json | 12 + .../circle/impetus/redstone/lit_south.json | 12 + .../block/circle/impetus/redstone/lit_up.json | 12 + .../circle/impetus/redstone/lit_west.json | 12 + .../circle/impetus/rightclick/dim_down.json | 12 + .../circle/impetus/rightclick/dim_east.json | 12 + .../circle/impetus/rightclick/dim_north.json | 12 + .../circle/impetus/rightclick/dim_south.json | 12 + .../circle/impetus/rightclick/dim_up.json | 12 + .../circle/impetus/rightclick/dim_west.json | 12 + .../circle/impetus/rightclick/lit_down.json | 12 + .../circle/impetus/rightclick/lit_east.json | 12 + .../circle/impetus/rightclick/lit_north.json | 12 + .../circle/impetus/rightclick/lit_south.json | 12 + .../circle/impetus/rightclick/lit_up.json | 12 + .../circle/impetus/rightclick/lit_west.json | 12 + .../models/block/citrine_edified_leaves.json | 7 + .../hexcasting/models/block/conjured.json | 6 + .../models/block/deco/amethyst_bricks.json | 6 + .../block/deco/amethyst_bricks_small.json | 6 + .../models/block/deco/amethyst_pillar.json | 8 + .../models/block/deco/amethyst_tiles.json | 6 + .../block/deco/quenched_allay_bricks_0.json | 6 + .../block/deco/quenched_allay_bricks_1.json | 6 + .../block/deco/quenched_allay_bricks_2.json | 6 + .../block/deco/quenched_allay_bricks_3.json | 6 + .../deco/quenched_allay_bricks_small_0.json | 6 + .../deco/quenched_allay_bricks_small_1.json | 6 + .../deco/quenched_allay_bricks_small_2.json | 6 + .../deco/quenched_allay_bricks_small_3.json | 6 + .../block/deco/quenched_allay_tiles_0.json | 6 + .../block/deco/quenched_allay_tiles_1.json | 6 + .../block/deco/quenched_allay_tiles_2.json | 6 + .../block/deco/quenched_allay_tiles_3.json | 6 + .../block/deco/slate_amethyst_bricks_0.json | 6 + .../block/deco/slate_amethyst_bricks_1.json | 6 + .../block/deco/slate_amethyst_bricks_2.json | 6 + .../deco/slate_amethyst_bricks_small_0.json | 6 + .../deco/slate_amethyst_bricks_small_1.json | 6 + .../deco/slate_amethyst_bricks_small_2.json | 6 + .../block/deco/slate_amethyst_tiles.json | 6 + .../models/block/deco/slate_bricks.json | 6 + .../models/block/deco/slate_bricks_small.json | 6 + .../models/block/deco/slate_tiles.json | 6 + .../models/block/edified_button.json | 6 + .../models/block/edified_button_pressed.json | 6 + .../block/edified_door_bottom_left.json | 8 + .../block/edified_door_bottom_left_open.json | 8 + .../block/edified_door_bottom_right.json | 8 + .../block/edified_door_bottom_right_open.json | 8 + .../models/block/edified_door_top_left.json | 8 + .../block/edified_door_top_left_open.json | 8 + .../models/block/edified_door_top_right.json | 8 + .../block/edified_door_top_right_open.json | 8 + .../models/block/edified_fence_gate.json | 6 + .../models/block/edified_fence_gate_open.json | 6 + .../models/block/edified_fence_gate_wall.json | 6 + .../block/edified_fence_gate_wall_open.json | 6 + .../models/block/edified_fence_post.json | 6 + .../models/block/edified_fence_side.json | 6 + .../hexcasting/models/block/edified_log.json | 7 + .../models/block/edified_log_amethyst.json | 7 + .../edified_log_amethyst_horizontal.json | 7 + .../models/block/edified_log_aventurine.json | 7 + .../edified_log_aventurine_horizontal.json | 7 + .../models/block/edified_log_citrine.json | 7 + .../block/edified_log_citrine_horizontal.json | 7 + .../models/block/edified_log_horizontal.json | 7 + .../models/block/edified_log_purple.json | 7 + .../block/edified_log_purple_horizontal.json | 7 + .../models/block/edified_panel.json | 6 + .../models/block/edified_planks.json | 6 + .../models/block/edified_planks_2.json | 6 + .../models/block/edified_planks_3.json | 6 + .../models/block/edified_pressure_plate.json | 6 + .../block/edified_pressure_plate_down.json | 6 + .../hexcasting/models/block/edified_slab.json | 8 + .../models/block/edified_slab_top.json | 8 + .../models/block/edified_stairs.json | 8 + .../models/block/edified_stairs_inner.json | 8 + .../models/block/edified_stairs_outer.json | 8 + .../hexcasting/models/block/edified_tile.json | 6 + .../models/block/edified_trapdoor_bottom.json | 7 + .../models/block/edified_trapdoor_open.json | 7 + .../models/block/edified_trapdoor_top.json | 7 + .../hexcasting/models/block/edified_wood.json | 7 + .../models/block/edified_wood_horizontal.json | 7 + .../models/block/quenched_allay.json | 6 + .../models/block/quenched_allay_0.json | 6 + .../models/block/quenched_allay_1.json | 6 + .../models/block/quenched_allay_2.json | 6 + .../models/block/quenched_allay_3.json | 6 + .../models/block/quenched_allay_bricks.json | 6 + .../block/quenched_allay_bricks_small.json | 6 + .../models/block/quenched_allay_tiles.json | 6 + .../hexcasting/models/block/scroll_paper.json | 6 + .../models/block/scroll_paper_lantern.json | 8 + .../models/block/slate_amethyst_pillar.json | 7 + .../slate_amethyst_pillar_horizontal.json | 7 + .../hexcasting/models/block/slate_block.json | 6 + .../hexcasting/models/block/slate_pillar.json | 7 + .../models/block/slate_pillar_horizontal.json | 7 + .../models/block/stripped_edified_log.json | 7 + .../stripped_edified_log_horizontal.json | 7 + .../models/block/stripped_edified_wood.json | 7 + .../stripped_edified_wood_horizontal.json | 7 + .../assets/hexcasting/models/item/abacus.json | 6 + .../models/item/akashic_bookshelf.json | 3 + .../models/item/akashic_ligature.json | 3 + .../models/item/akashic_record.json | 3 + .../models/item/amethyst_bricks.json | 3 + .../models/item/amethyst_bricks_small.json | 3 + .../hexcasting/models/item/amethyst_dust.json | 6 + .../models/item/amethyst_dust_block.json | 3 + .../models/item/amethyst_edified_leaves.json | 3 + .../models/item/amethyst_pillar.json | 3 + .../models/item/amethyst_sconce.json | 3 + .../models/item/amethyst_tiles.json | 3 + .../models/item/ancient_colorizer.json | 6 + .../models/item/ancient_cypher.json | 120 ++++++++++ .../models/item/ancient_cypher_0_filled.json | 7 + .../models/item/ancient_cypher_1.json | 6 + .../models/item/ancient_cypher_1_filled.json | 7 + .../models/item/ancient_cypher_2.json | 6 + .../models/item/ancient_cypher_2_filled.json | 7 + .../models/item/ancient_cypher_3.json | 6 + .../models/item/ancient_cypher_3_filled.json | 7 + .../models/item/ancient_cypher_4.json | 6 + .../models/item/ancient_cypher_4_filled.json | 7 + .../models/item/ancient_cypher_5.json | 6 + .../models/item/ancient_cypher_5_filled.json | 7 + .../models/item/ancient_cypher_6.json | 6 + .../models/item/ancient_cypher_6_filled.json | 7 + .../models/item/ancient_cypher_7.json | 6 + .../models/item/ancient_cypher_7_filled.json | 7 + .../models/item/ancient_scroll_paper.json | 3 + .../item/ancient_scroll_paper_lantern.json | 3 + .../hexcasting/models/item/artifact.json | 120 ++++++++++ .../models/item/artifact_0_filled.json | 7 + .../hexcasting/models/item/artifact_1.json | 6 + .../models/item/artifact_1_filled.json | 7 + .../hexcasting/models/item/artifact_2.json | 6 + .../models/item/artifact_2_filled.json | 7 + .../hexcasting/models/item/artifact_3.json | 6 + .../models/item/artifact_3_filled.json | 7 + .../hexcasting/models/item/artifact_4.json | 6 + .../models/item/artifact_4_filled.json | 7 + .../hexcasting/models/item/artifact_5.json | 6 + .../models/item/artifact_5_filled.json | 7 + .../hexcasting/models/item/artifact_6.json | 6 + .../models/item/artifact_6_filled.json | 7 + .../hexcasting/models/item/artifact_7.json | 6 + .../models/item/artifact_7_filled.json | 7 + .../item/aventurine_edified_leaves.json | 3 + .../hexcasting/models/item/battery.json | 179 +++++++++++++++ .../models/item/charged_amethyst.json | 6 + .../hexcasting/models/item/cherry_staff.json | 6 + .../models/item/citrine_edified_leaves.json | 3 + .../models/item/conjured_block.json | 6 + .../models/item/conjured_light.json | 6 + .../models/item/creative_unlocker.json | 6 + .../assets/hexcasting/models/item/cypher.json | 120 ++++++++++ .../models/item/cypher_0_filled.json | 7 + .../hexcasting/models/item/cypher_1.json | 6 + .../models/item/cypher_1_filled.json | 7 + .../hexcasting/models/item/cypher_2.json | 6 + .../models/item/cypher_2_filled.json | 7 + .../hexcasting/models/item/cypher_3.json | 6 + .../models/item/cypher_3_filled.json | 7 + .../hexcasting/models/item/cypher_4.json | 6 + .../models/item/cypher_4_filled.json | 7 + .../hexcasting/models/item/cypher_5.json | 6 + .../models/item/cypher_5_filled.json | 7 + .../hexcasting/models/item/cypher_6.json | 6 + .../models/item/cypher_6_filled.json | 7 + .../hexcasting/models/item/cypher_7.json | 6 + .../models/item/cypher_7_filled.json | 7 + .../models/item/default_colorizer.json | 6 + .../models/item/directrix/boolean.json | 3 + .../models/item/directrix/empty.json | 3 + .../models/item/directrix/redstone.json | 3 + .../models/item/dye_colorizer_black.json | 6 + .../models/item/dye_colorizer_blue.json | 6 + .../models/item/dye_colorizer_brown.json | 6 + .../models/item/dye_colorizer_cyan.json | 6 + .../models/item/dye_colorizer_gray.json | 6 + .../models/item/dye_colorizer_green.json | 6 + .../models/item/dye_colorizer_light_blue.json | 6 + .../models/item/dye_colorizer_light_gray.json | 6 + .../models/item/dye_colorizer_lime.json | 6 + .../models/item/dye_colorizer_magenta.json | 6 + .../models/item/dye_colorizer_orange.json | 6 + .../models/item/dye_colorizer_pink.json | 6 + .../models/item/dye_colorizer_purple.json | 6 + .../models/item/dye_colorizer_red.json | 6 + .../models/item/dye_colorizer_white.json | 6 + .../models/item/dye_colorizer_yellow.json | 6 + .../models/item/edified_button.json | 6 + .../hexcasting/models/item/edified_door.json | 6 + .../hexcasting/models/item/edified_fence.json | 3 + .../models/item/edified_fence_gate.json | 3 + .../hexcasting/models/item/edified_log.json | 3 + .../models/item/edified_log_amethyst.json | 3 + .../models/item/edified_log_aventurine.json | 3 + .../models/item/edified_log_citrine.json | 3 + .../models/item/edified_log_purple.json | 3 + .../hexcasting/models/item/edified_panel.json | 3 + .../models/item/edified_planks.json | 3 + .../models/item/edified_pressure_plate.json | 3 + .../hexcasting/models/item/edified_slab.json | 3 + .../models/item/edified_stairs.json | 3 + .../hexcasting/models/item/edified_tile.json | 3 + .../models/item/edified_trapdoor.json | 3 + .../hexcasting/models/item/edified_wood.json | 3 + .../assets/hexcasting/models/item/focus.json | 176 +++++++++++++++ .../models/item/focus_0_filled.json | 7 + .../models/item/focus_0_sealed.json | 7 + .../hexcasting/models/item/focus_1.json | 6 + .../models/item/focus_1_filled.json | 7 + .../models/item/focus_1_sealed.json | 7 + .../hexcasting/models/item/focus_2.json | 6 + .../models/item/focus_2_filled.json | 7 + .../models/item/focus_2_sealed.json | 7 + .../hexcasting/models/item/focus_3.json | 6 + .../models/item/focus_3_filled.json | 7 + .../models/item/focus_3_sealed.json | 7 + .../hexcasting/models/item/focus_4.json | 6 + .../models/item/focus_4_filled.json | 7 + .../models/item/focus_4_sealed.json | 7 + .../hexcasting/models/item/focus_5.json | 6 + .../models/item/focus_5_filled.json | 7 + .../models/item/focus_5_sealed.json | 7 + .../hexcasting/models/item/focus_6.json | 6 + .../models/item/focus_6_filled.json | 7 + .../models/item/focus_6_sealed.json | 7 + .../hexcasting/models/item/focus_7.json | 6 + .../models/item/focus_7_filled.json | 7 + .../models/item/focus_7_sealed.json | 7 + .../hexcasting/models/item/impetus/empty.json | 3 + .../hexcasting/models/item/impetus/look.json | 3 + .../models/item/impetus/redstone.json | 3 + .../models/item/impetus/rightclick.json | 3 + .../models/item/jeweler_hammer.json | 6 + .../assets/hexcasting/models/item/lens.json | 20 ++ .../hexcasting/models/item/lore_fragment.json | 6 + .../hexcasting/models/item/old_staff.json | 6 + .../models/item/patchouli_book.json | 6 + .../hexcasting/models/item/phial_large_0.json | 6 + .../hexcasting/models/item/phial_large_1.json | 6 + .../hexcasting/models/item/phial_large_2.json | 6 + .../hexcasting/models/item/phial_large_3.json | 6 + .../hexcasting/models/item/phial_large_4.json | 6 + .../models/item/phial_larger_0.json | 6 + .../models/item/phial_larger_1.json | 6 + .../models/item/phial_larger_2.json | 6 + .../models/item/phial_larger_3.json | 6 + .../models/item/phial_larger_4.json | 6 + .../models/item/phial_largest_0.json | 6 + .../models/item/phial_largest_1.json | 6 + .../models/item/phial_largest_2.json | 6 + .../models/item/phial_largest_3.json | 6 + .../models/item/phial_largest_4.json | 6 + .../models/item/phial_medium_0.json | 6 + .../models/item/phial_medium_1.json | 6 + .../models/item/phial_medium_2.json | 6 + .../models/item/phial_medium_3.json | 6 + .../models/item/phial_medium_4.json | 6 + .../hexcasting/models/item/phial_small_0.json | 6 + .../hexcasting/models/item/phial_small_1.json | 6 + .../hexcasting/models/item/phial_small_2.json | 6 + .../hexcasting/models/item/phial_small_3.json | 6 + .../hexcasting/models/item/phial_small_4.json | 6 + .../models/item/pride_colorizer_agender.json | 6 + .../models/item/pride_colorizer_aroace.json | 6 + .../item/pride_colorizer_aromantic.json | 6 + .../models/item/pride_colorizer_asexual.json | 6 + .../models/item/pride_colorizer_bisexual.json | 6 + .../models/item/pride_colorizer_demiboy.json | 6 + .../models/item/pride_colorizer_demigirl.json | 6 + .../models/item/pride_colorizer_gay.json | 6 + .../item/pride_colorizer_genderfluid.json | 6 + .../item/pride_colorizer_genderqueer.json | 6 + .../models/item/pride_colorizer_intersex.json | 6 + .../models/item/pride_colorizer_lesbian.json | 6 + .../item/pride_colorizer_nonbinary.json | 6 + .../item/pride_colorizer_pansexual.json | 6 + .../models/item/pride_colorizer_plural.json | 6 + .../item/pride_colorizer_transgender.json | 6 + .../models/item/quenched_allay.json | 28 +++ .../models/item/quenched_allay_bricks.json | 28 +++ .../item/quenched_allay_bricks_small.json | 28 +++ .../models/item/quenched_allay_shard.json | 28 +++ .../models/item/quenched_allay_tiles.json | 28 +++ .../models/item/quenched_shard_0.json | 6 + .../models/item/quenched_shard_1.json | 6 + .../models/item/quenched_shard_2.json | 6 + .../models/item/quenched_shard_3.json | 6 + .../assets/hexcasting/models/item/scroll.json | 16 ++ .../models/item/scroll_ancient_large.json | 6 + .../models/item/scroll_ancient_medium.json | 6 + .../models/item/scroll_ancient_small.json | 6 + .../hexcasting/models/item/scroll_medium.json | 16 ++ .../hexcasting/models/item/scroll_paper.json | 3 + .../models/item/scroll_paper_lantern.json | 3 + .../models/item/scroll_pristine_large.json | 6 + .../models/item/scroll_pristine_medium.json | 6 + .../models/item/scroll_pristine_small.json | 6 + .../hexcasting/models/item/scroll_small.json | 16 ++ .../assets/hexcasting/models/item/slate.json | 16 ++ .../models/item/slate_amethyst_bricks.json | 3 + .../item/slate_amethyst_bricks_small.json | 3 + .../models/item/slate_amethyst_pillar.json | 3 + .../models/item/slate_amethyst_tiles.json | 3 + .../hexcasting/models/item/slate_blank.json | 6 + .../hexcasting/models/item/slate_block.json | 3 + .../hexcasting/models/item/slate_bricks.json | 3 + .../models/item/slate_bricks_small.json | 3 + .../hexcasting/models/item/slate_pillar.json | 3 + .../hexcasting/models/item/slate_tiles.json | 3 + .../hexcasting/models/item/slate_written.json | 6 + .../hexcasting/models/item/spellbook.json | 176 +++++++++++++++ .../models/item/spellbook_0_filled.json | 7 + .../models/item/spellbook_0_sealed.json | 7 + .../hexcasting/models/item/spellbook_1.json | 6 + .../models/item/spellbook_1_filled.json | 7 + .../models/item/spellbook_1_sealed.json | 7 + .../hexcasting/models/item/spellbook_2.json | 6 + .../models/item/spellbook_2_filled.json | 7 + .../models/item/spellbook_2_sealed.json | 7 + .../hexcasting/models/item/spellbook_3.json | 6 + .../models/item/spellbook_3_filled.json | 7 + .../models/item/spellbook_3_sealed.json | 7 + .../hexcasting/models/item/spellbook_4.json | 6 + .../models/item/spellbook_4_filled.json | 7 + .../models/item/spellbook_4_sealed.json | 7 + .../hexcasting/models/item/spellbook_5.json | 6 + .../models/item/spellbook_5_filled.json | 7 + .../models/item/spellbook_5_sealed.json | 7 + .../hexcasting/models/item/spellbook_6.json | 6 + .../models/item/spellbook_6_filled.json | 7 + .../models/item/spellbook_6_sealed.json | 7 + .../hexcasting/models/item/spellbook_7.json | 6 + .../models/item/spellbook_7_filled.json | 7 + .../models/item/spellbook_7_sealed.json | 7 + .../hexcasting/models/item/staff/acacia.json | 6 + .../hexcasting/models/item/staff/bamboo.json | 6 + .../hexcasting/models/item/staff/birch.json | 6 + .../hexcasting/models/item/staff/cherry.json | 6 + .../hexcasting/models/item/staff/crimson.json | 6 + .../models/item/staff/dark_oak.json | 6 + .../hexcasting/models/item/staff/edified.json | 6 + .../hexcasting/models/item/staff/jungle.json | 6 + .../models/item/staff/mangrove.json | 6 + .../models/item/staff/mindsplice.json | 6 + .../hexcasting/models/item/staff/oak.json | 6 + .../models/item/staff/quenched.json | 28 +++ .../models/item/staff/quenched_0.json | 6 + .../models/item/staff/quenched_1.json | 6 + .../models/item/staff/quenched_2.json | 6 + .../models/item/staff/quenched_3.json | 6 + .../hexcasting/models/item/staff/spruce.json | 6 + .../hexcasting/models/item/staff/warped.json | 6 + .../models/item/stripped_edified_log.json | 3 + .../models/item/stripped_edified_wood.json | 3 + .../hexcasting/models/item/sub_sandwich.json | 6 + .../hexcasting/models/item/thought_knot.json | 20 ++ .../models/item/thought_knot_written.json | 7 + .../hexcasting/models/item/trinket.json | 120 ++++++++++ .../models/item/trinket_0_filled.json | 7 + .../hexcasting/models/item/trinket_1.json | 6 + .../models/item/trinket_1_filled.json | 7 + .../hexcasting/models/item/trinket_2.json | 6 + .../models/item/trinket_2_filled.json | 7 + .../hexcasting/models/item/trinket_3.json | 6 + .../models/item/trinket_3_filled.json | 7 + .../hexcasting/models/item/trinket_4.json | 6 + .../models/item/trinket_4_filled.json | 7 + .../hexcasting/models/item/trinket_5.json | 6 + .../models/item/trinket_5_filled.json | 7 + .../hexcasting/models/item/trinket_6.json | 6 + .../models/item/trinket_6_filled.json | 7 + .../hexcasting/models/item/trinket_7.json | 6 + .../models/item/trinket_7_filled.json | 7 + .../models/item/uuid_colorizer.json | 6 + .../hexcasting/models/staff/acacia.json | 16 ++ .../hexcasting/models/staff/bamboo.json | 16 ++ .../assets/hexcasting/models/staff/birch.json | 16 ++ .../hexcasting/models/staff/cherry.json | 16 ++ .../hexcasting/models/staff/crimson.json | 16 ++ .../hexcasting/models/staff/dark_oak.json | 16 ++ .../hexcasting/models/staff/edified.json | 16 ++ .../hexcasting/models/staff/jungle.json | 16 ++ .../hexcasting/models/staff/mangrove.json | 16 ++ .../hexcasting/models/staff/mindsplice.json | 16 ++ .../assets/hexcasting/models/staff/oak.json | 16 ++ .../hexcasting/models/staff/spruce.json | 16 ++ .../hexcasting/models/staff/warped.json | 16 ++ .../data/create/tags/block/brittle.json | 8 + .../data/forge/tags/item/dusts/amethyst.json | 5 + .../resources/data/forge/tags/item/gems.json | 5 + .../advancement/aaa_wasteful_cast.json | 32 +++ .../hexcasting/advancement/aab_big_cast.json | 32 +++ .../advancement/creative_unlocker.json | 36 +++ .../hexcasting/advancement/enlightenment.json | 38 ++++ .../data/hexcasting/advancement/lore.json | 32 +++ .../advancement/lore/cardamom1.json | 25 +++ .../advancement/lore/cardamom2.json | 25 +++ .../advancement/lore/cardamom3.json | 25 +++ .../advancement/lore/cardamom4.json | 25 +++ .../advancement/lore/cardamom5.json | 25 +++ .../advancement/lore/experiment1.json | 25 +++ .../advancement/lore/experiment2.json | 25 +++ .../advancement/lore/inventory.json | 25 +++ .../hexcasting/advancement/opened_eyes.json | 33 +++ .../recipes/brainsweep/akashic_record.json | 35 +++ .../recipes/brainsweep/budding_amethyst.json | 35 +++ .../recipes/brainsweep/directrix_boolean.json | 35 +++ .../brainsweep/directrix_redstone.json | 35 +++ .../recipes/brainsweep/impetus_look.json | 35 +++ .../brainsweep/impetus_rightclick.json | 35 +++ .../brainsweep/impetus_storedplayer.json | 35 +++ .../recipes/brainsweep/quench_allay.json | 35 +++ .../building_blocks/amethyst_bricks.json | 32 +++ ...yst_bricks_from_amethyst_bricks_small.json | 32 +++ ...yst_bricks_small_from_amethyst_bricks.json | 32 +++ .../amethyst_dust_packing.json | 32 +++ .../amethyst_dust_unpacking.json | 32 +++ .../building_blocks/amethyst_pillar.json | 32 +++ .../building_blocks/amethyst_tiles.json | 32 +++ .../building_blocks/ancient_scroll_paper.json | 32 +++ .../building_blocks/edified_fence.json | 32 +++ .../building_blocks/edified_fence_gate.json | 32 +++ .../building_blocks/edified_panel.json | 32 +++ .../building_blocks/edified_planks.json | 32 +++ .../recipes/building_blocks/edified_slab.json | 32 +++ .../building_blocks/edified_stairs.json | 32 +++ .../recipes/building_blocks/edified_tile.json | 32 +++ .../recipes/building_blocks/edified_wood.json | 32 +++ .../quenched_allay_bricks.json | 32 +++ ...icks_from_quenched_allay_bricks_small.json | 32 +++ ...icks_small_from_quenched_allay_bricks.json | 32 +++ .../building_blocks/quenched_allay_tiles.json | 32 +++ .../recipes/building_blocks/scroll_paper.json | 32 +++ .../slate_amethyst_bricks.json | 32 +++ .../slate_amethyst_bricks_small.json | 32 +++ .../slate_amethyst_pillar.json | 32 +++ .../building_blocks/slate_amethyst_tiles.json | 32 +++ .../recipes/building_blocks/slate_block.json | 32 +++ .../slate_block_from_slates.json | 32 +++ .../recipes/building_blocks/slate_bricks.json | 32 +++ .../slate_bricks_from_slate_bricks_small.json | 32 +++ .../slate_bricks_small_from_slate_bricks.json | 32 +++ .../recipes/building_blocks/slate_pillar.json | 32 +++ .../recipes/building_blocks/slate_tiles.json | 32 +++ .../stonecutting/amethyst_bricks.json | 32 +++ .../stonecutting/amethyst_bricks_small.json | 32 +++ .../stonecutting/amethyst_pillar.json | 32 +++ .../stonecutting/amethyst_tiles.json | 32 +++ .../stonecutting/quenched_allay_bricks.json | 32 +++ .../quenched_allay_bricks_small.json | 32 +++ .../stonecutting/quenched_allay_tiles.json | 32 +++ .../stonecutting/slate_bricks.json | 32 +++ .../stonecutting/slate_bricks_small.json | 32 +++ .../stonecutting/slate_pillar.json | 32 +++ .../stonecutting/slate_tiles.json | 32 +++ .../stripped_edified_wood.json | 32 +++ .../ageing_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/amethyst_sconce.json | 32 +++ .../ancient_scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll.json | 32 +++ .../recipes/decorations/scroll_medium.json | 32 +++ .../decorations/scroll_paper_lantern.json | 32 +++ .../recipes/decorations/scroll_small.json | 32 +++ .../recipes/decorations/slate.json | 32 +++ .../recipes/food/sub_sandwich.json | 32 +++ .../recipes/misc/ancient_colorizer.json | 32 +++ .../decompose_quenched_shard/charged.json | 32 +++ .../misc/decompose_quenched_shard/dust.json | 32 +++ .../misc/decompose_quenched_shard/shard.json | 32 +++ .../recipes/misc/default_colorizer.json | 32 +++ .../recipes/misc/dye_colorizer_black.json | 32 +++ .../recipes/misc/dye_colorizer_blue.json | 32 +++ .../recipes/misc/dye_colorizer_brown.json | 32 +++ .../recipes/misc/dye_colorizer_cyan.json | 32 +++ .../recipes/misc/dye_colorizer_gray.json | 32 +++ .../recipes/misc/dye_colorizer_green.json | 32 +++ .../misc/dye_colorizer_light_blue.json | 32 +++ .../misc/dye_colorizer_light_gray.json | 32 +++ .../recipes/misc/dye_colorizer_lime.json | 32 +++ .../recipes/misc/dye_colorizer_magenta.json | 32 +++ .../recipes/misc/dye_colorizer_orange.json | 32 +++ .../recipes/misc/dye_colorizer_pink.json | 32 +++ .../recipes/misc/dye_colorizer_purple.json | 32 +++ .../recipes/misc/dye_colorizer_red.json | 32 +++ .../recipes/misc/dye_colorizer_white.json | 32 +++ .../recipes/misc/dye_colorizer_yellow.json | 32 +++ .../recipes/misc/pride_colorizer_agender.json | 32 +++ .../recipes/misc/pride_colorizer_aroace.json | 32 +++ .../misc/pride_colorizer_aromantic.json | 32 +++ .../recipes/misc/pride_colorizer_asexual.json | 32 +++ .../misc/pride_colorizer_bisexual.json | 32 +++ .../recipes/misc/pride_colorizer_demiboy.json | 32 +++ .../misc/pride_colorizer_demigirl.json | 32 +++ .../recipes/misc/pride_colorizer_gay.json | 32 +++ .../misc/pride_colorizer_genderfluid.json | 32 +++ .../misc/pride_colorizer_genderqueer.json | 32 +++ .../misc/pride_colorizer_intersex.json | 32 +++ .../recipes/misc/pride_colorizer_lesbian.json | 32 +++ .../misc/pride_colorizer_nonbinary.json | 32 +++ .../recipes/misc/pride_colorizer_plural.json | 32 +++ .../misc/pride_colorizer_transgender.json | 32 +++ .../recipes/misc/uuid_colorizer.json | 32 +++ .../recipes/redstone/akashic_bookshelf.json | 35 +++ .../recipes/redstone/akashic_ligature.json | 35 +++ .../recipes/redstone/directrix/empty.json | 35 +++ .../recipes/redstone/edified_button.json | 32 +++ .../recipes/redstone/edified_door.json | 32 +++ .../redstone/edified_pressure_plate.json | 32 +++ .../recipes/redstone/edified_trapdoor.json | 32 +++ .../recipes/redstone/impetus/empty.json | 35 +++ .../advancement/recipes/tools/abacus.json | 32 +++ .../advancement/recipes/tools/artifact.json | 32 +++ .../advancement/recipes/tools/cypher.json | 32 +++ .../advancement/recipes/tools/focus.json | 32 +++ .../recipes/tools/focus_rotated.json | 32 +++ .../recipes/tools/jeweler_hammer.json | 32 +++ .../advancement/recipes/tools/lens.json | 32 +++ .../advancement/recipes/tools/spellbook.json | 43 ++++ .../recipes/tools/staff/acacia.json | 32 +++ .../recipes/tools/staff/bamboo.json | 32 +++ .../recipes/tools/staff/birch.json | 32 +++ .../recipes/tools/staff/cherry.json | 32 +++ .../recipes/tools/staff/crimson.json | 32 +++ .../recipes/tools/staff/dark_oak.json | 32 +++ .../recipes/tools/staff/edified.json | 32 +++ .../recipes/tools/staff/jungle.json | 32 +++ .../recipes/tools/staff/mangrove.json | 32 +++ .../recipes/tools/staff/mindsplice.json | 32 +++ .../advancement/recipes/tools/staff/oak.json | 32 +++ .../recipes/tools/staff/quenched.json | 32 +++ .../recipes/tools/staff/spruce.json | 32 +++ .../recipes/tools/staff/warped.json | 32 +++ .../recipes/tools/thought_knot.json | 32 +++ .../advancement/recipes/tools/trinket.json | 32 +++ .../data/hexcasting/advancement/root.json | 34 +++ .../advancement/y_u_no_cast_angy.json | 26 +++ .../data/hexcasting/damage_type/overcast.json | 5 + .../loot_modifiers/amethyst_cluster.json | 10 + .../cypher/hexcasting/random_cypher.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../cypher/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_corridor.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../lore/minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_desert_house.json | 10 + .../chests/village/village_plains_house.json | 10 + .../chests/village/village_savanna_house.json | 10 + .../chests/village/village_snowy_house.json | 10 + .../chests/village/village_taiga_house.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../scroll/hexcasting/random_scroll.json | 10 + .../minecraft/chests/abandoned_mineshaft.json | 10 + .../scroll/minecraft/chests/ancient_city.json | 10 + .../minecraft/chests/bastion_other.json | 10 + .../minecraft/chests/bastion_treasure.json | 10 + .../minecraft/chests/desert_pyramid.json | 10 + .../minecraft/chests/end_city_treasure.json | 10 + .../minecraft/chests/jungle_temple.json | 10 + .../minecraft/chests/nether_bridge.json | 10 + .../minecraft/chests/pillager_outpost.json | 10 + .../minecraft/chests/shipwreck_map.json | 10 + .../minecraft/chests/simple_dungeon.json | 10 + .../minecraft/chests/stronghold_library.json | 10 + .../chests/village/village_cartographer.json | 10 + .../minecraft/chests/woodland_mansion.json | 10 + .../loot_table/blocks/akashic_bookshelf.json | 15 ++ .../loot_table/blocks/akashic_ligature.json | 15 ++ .../loot_table/blocks/akashic_record.json | 15 ++ .../loot_table/blocks/amethyst_bricks.json | 15 ++ .../blocks/amethyst_bricks_small.json | 15 ++ .../blocks/amethyst_dust_block.json | 15 ++ .../blocks/amethyst_edified_leaves.json | 41 ++++ .../loot_table/blocks/amethyst_pillar.json | 15 ++ .../loot_table/blocks/amethyst_sconce.json | 15 ++ .../loot_table/blocks/amethyst_tiles.json | 15 ++ .../blocks/ancient_scroll_paper.json | 15 ++ .../blocks/ancient_scroll_paper_lantern.json | 15 ++ .../blocks/aventurine_edified_leaves.json | 41 ++++ .../blocks/citrine_edified_leaves.json | 41 ++++ .../loot_table/blocks/directrix/boolean.json | 15 ++ .../loot_table/blocks/directrix/empty.json | 15 ++ .../loot_table/blocks/directrix/redstone.json | 15 ++ .../loot_table/blocks/edified_button.json | 15 ++ .../loot_table/blocks/edified_door.json | 24 ++ .../loot_table/blocks/edified_fence.json | 15 ++ .../loot_table/blocks/edified_fence_gate.json | 15 ++ .../loot_table/blocks/edified_log.json | 15 ++ .../blocks/edified_log_amethyst.json | 15 ++ .../blocks/edified_log_aventurine.json | 15 ++ .../blocks/edified_log_citrine.json | 15 ++ .../loot_table/blocks/edified_log_purple.json | 15 ++ .../loot_table/blocks/edified_panel.json | 15 ++ .../loot_table/blocks/edified_planks.json | 15 ++ .../blocks/edified_pressure_plate.json | 15 ++ .../loot_table/blocks/edified_slab.json | 34 +++ .../loot_table/blocks/edified_stairs.json | 15 ++ .../loot_table/blocks/edified_tile.json | 15 ++ .../loot_table/blocks/edified_trapdoor.json | 15 ++ .../loot_table/blocks/edified_wood.json | 15 ++ .../loot_table/blocks/impetus/empty.json | 15 ++ .../loot_table/blocks/impetus/look.json | 15 ++ .../loot_table/blocks/impetus/redstone.json | 15 ++ .../loot_table/blocks/impetus/rightclick.json | 15 ++ .../loot_table/blocks/quenched_allay.json | 69 ++++++ .../blocks/quenched_allay_bricks.json | 15 ++ .../blocks/quenched_allay_bricks_small.json | 15 ++ .../blocks/quenched_allay_tiles.json | 15 ++ .../loot_table/blocks/scroll_paper.json | 15 ++ .../blocks/scroll_paper_lantern.json | 15 ++ .../hexcasting/loot_table/blocks/slate.json | 24 ++ .../blocks/slate_amethyst_bricks.json | 15 ++ .../blocks/slate_amethyst_bricks_small.json | 15 ++ .../blocks/slate_amethyst_pillar.json | 15 ++ .../blocks/slate_amethyst_tiles.json | 15 ++ .../loot_table/blocks/slate_block.json | 15 ++ .../loot_table/blocks/slate_bricks.json | 15 ++ .../loot_table/blocks/slate_bricks_small.json | 15 ++ .../loot_table/blocks/slate_pillar.json | 15 ++ .../loot_table/blocks/slate_tiles.json | 15 ++ .../blocks/stripped_edified_log.json | 15 ++ .../blocks/stripped_edified_wood.json | 15 ++ .../loot_table/inject/amethyst_cluster.json | 211 ++++++++++++++++++ .../data/hexcasting/recipe/abacus.json | 24 ++ .../recipe/ageing_scroll_paper_lantern.json | 37 +++ .../hexcasting/recipe/akashic_bookshelf.json | 24 ++ .../hexcasting/recipe/akashic_ligature.json | 30 +++ .../hexcasting/recipe/amethyst_bricks.json | 17 ++ ...yst_bricks_from_amethyst_bricks_small.json | 13 ++ ...yst_bricks_small_from_amethyst_bricks.json | 13 ++ .../recipe/amethyst_dust_packing.json | 17 ++ .../recipe/amethyst_dust_unpacking.json | 13 ++ .../hexcasting/recipe/amethyst_pillar.json | 17 ++ .../hexcasting/recipe/amethyst_sconce.json | 20 ++ .../hexcasting/recipe/amethyst_tiles.json | 17 ++ .../hexcasting/recipe/ancient_colorizer.json | 21 ++ .../recipe/ancient_scroll_paper.json | 37 +++ .../recipe/ancient_scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/artifact.json | 24 ++ .../recipe/brainsweep/akashic_record.json | 16 ++ .../recipe/brainsweep/budding_amethyst.json | 15 ++ .../recipe/brainsweep/directrix_boolean.json | 21 ++ .../recipe/brainsweep/directrix_redstone.json | 21 ++ .../recipe/brainsweep/impetus_look.json | 20 ++ .../recipe/brainsweep/impetus_rightclick.json | 20 ++ .../brainsweep/impetus_storedplayer.json | 21 ++ .../recipe/brainsweep/quench_allay.json | 15 ++ .../data/hexcasting/recipe/cypher.json | 21 ++ .../decompose_quenched_shard/charged.json | 16 ++ .../recipe/decompose_quenched_shard/dust.json | 16 ++ .../decompose_quenched_shard/shard.json | 16 ++ .../hexcasting/recipe/default_colorizer.json | 21 ++ .../hexcasting/recipe/directrix/empty.json | 27 +++ .../recipe/dye_colorizer_black.json | 21 ++ .../hexcasting/recipe/dye_colorizer_blue.json | 21 ++ .../recipe/dye_colorizer_brown.json | 21 ++ .../hexcasting/recipe/dye_colorizer_cyan.json | 21 ++ .../hexcasting/recipe/dye_colorizer_gray.json | 21 ++ .../recipe/dye_colorizer_green.json | 21 ++ .../recipe/dye_colorizer_light_blue.json | 21 ++ .../recipe/dye_colorizer_light_gray.json | 21 ++ .../hexcasting/recipe/dye_colorizer_lime.json | 21 ++ .../recipe/dye_colorizer_magenta.json | 21 ++ .../recipe/dye_colorizer_orange.json | 21 ++ .../hexcasting/recipe/dye_colorizer_pink.json | 21 ++ .../recipe/dye_colorizer_purple.json | 21 ++ .../hexcasting/recipe/dye_colorizer_red.json | 21 ++ .../recipe/dye_colorizer_white.json | 21 ++ .../recipe/dye_colorizer_yellow.json | 21 ++ .../hexcasting/recipe/dynamicseal_focus.json | 4 + .../recipe/dynamicseal_spellbook.json | 4 + .../hexcasting/recipe/edified_button.json | 13 ++ .../data/hexcasting/recipe/edified_door.json | 18 ++ .../data/hexcasting/recipe/edified_fence.json | 20 ++ .../hexcasting/recipe/edified_fence_gate.json | 20 ++ .../data/hexcasting/recipe/edified_panel.json | 21 ++ .../hexcasting/recipe/edified_planks.json | 13 ++ .../recipe/edified_pressure_plate.json | 16 ++ .../data/hexcasting/recipe/edified_slab.json | 16 ++ .../hexcasting/recipe/edified_stairs.json | 18 ++ .../data/hexcasting/recipe/edified_tile.json | 18 ++ .../hexcasting/recipe/edified_trapdoor.json | 17 ++ .../data/hexcasting/recipe/edified_wood.json | 17 ++ .../data/hexcasting/recipe/focus.json | 27 +++ .../data/hexcasting/recipe/focus_rotated.json | 27 +++ .../data/hexcasting/recipe/impetus/empty.json | 27 +++ .../hexcasting/recipe/jeweler_hammer.json | 32 +++ .../data/hexcasting/recipe/lens.json | 21 ++ .../recipe/pride_colorizer_agender.json | 21 ++ .../recipe/pride_colorizer_aroace.json | 21 ++ .../recipe/pride_colorizer_aromantic.json | 21 ++ .../recipe/pride_colorizer_asexual.json | 21 ++ .../recipe/pride_colorizer_bisexual.json | 21 ++ .../recipe/pride_colorizer_demiboy.json | 21 ++ .../recipe/pride_colorizer_demigirl.json | 21 ++ .../recipe/pride_colorizer_gay.json | 21 ++ .../recipe/pride_colorizer_genderfluid.json | 21 ++ .../recipe/pride_colorizer_genderqueer.json | 21 ++ .../recipe/pride_colorizer_intersex.json | 21 ++ .../recipe/pride_colorizer_lesbian.json | 21 ++ .../recipe/pride_colorizer_nonbinary.json | 21 ++ .../recipe/pride_colorizer_plural.json | 21 ++ .../recipe/pride_colorizer_transgender.json | 21 ++ .../recipe/quenched_allay_bricks.json | 17 ++ ...icks_from_quenched_allay_bricks_small.json | 13 ++ ...icks_small_from_quenched_allay_bricks.json | 13 ++ .../recipe/quenched_allay_tiles.json | 17 ++ .../data/hexcasting/recipe/scroll.json | 21 ++ .../data/hexcasting/recipe/scroll_medium.json | 21 ++ .../data/hexcasting/recipe/scroll_paper.json | 24 ++ .../recipe/scroll_paper_lantern.json | 20 ++ .../data/hexcasting/recipe/scroll_small.json | 20 ++ .../data/hexcasting/recipe/slate.json | 20 ++ .../recipe/slate_amethyst_bricks.json | 16 ++ .../recipe/slate_amethyst_bricks_small.json | 16 ++ .../recipe/slate_amethyst_pillar.json | 16 ++ .../recipe/slate_amethyst_tiles.json | 16 ++ .../data/hexcasting/recipe/slate_block.json | 24 ++ .../recipe/slate_block_from_slates.json | 17 ++ .../data/hexcasting/recipe/slate_bricks.json | 17 ++ .../slate_bricks_from_slate_bricks_small.json | 13 ++ .../slate_bricks_small_from_slate_bricks.json | 13 ++ .../data/hexcasting/recipe/slate_pillar.json | 17 ++ .../data/hexcasting/recipe/slate_tiles.json | 17 ++ .../data/hexcasting/recipe/spellbook.json | 27 +++ .../data/hexcasting/recipe/staff/acacia.json | 24 ++ .../data/hexcasting/recipe/staff/bamboo.json | 24 ++ .../data/hexcasting/recipe/staff/birch.json | 24 ++ .../data/hexcasting/recipe/staff/cherry.json | 24 ++ .../data/hexcasting/recipe/staff/crimson.json | 24 ++ .../hexcasting/recipe/staff/dark_oak.json | 24 ++ .../data/hexcasting/recipe/staff/edified.json | 24 ++ .../data/hexcasting/recipe/staff/jungle.json | 24 ++ .../hexcasting/recipe/staff/mangrove.json | 24 ++ .../hexcasting/recipe/staff/mindsplice.json | 24 ++ .../data/hexcasting/recipe/staff/oak.json | 24 ++ .../hexcasting/recipe/staff/quenched.json | 24 ++ .../data/hexcasting/recipe/staff/spruce.json | 24 ++ .../data/hexcasting/recipe/staff/warped.json | 24 ++ .../recipe/stonecutting/amethyst_bricks.json | 10 + .../stonecutting/amethyst_bricks_small.json | 10 + .../recipe/stonecutting/amethyst_pillar.json | 10 + .../recipe/stonecutting/amethyst_tiles.json | 10 + .../stonecutting/quenched_allay_bricks.json | 10 + .../quenched_allay_bricks_small.json | 10 + .../stonecutting/quenched_allay_tiles.json | 10 + .../recipe/stonecutting/slate_bricks.json | 10 + .../stonecutting/slate_bricks_small.json | 10 + .../recipe/stonecutting/slate_pillar.json | 10 + .../recipe/stonecutting/slate_tiles.json | 10 + .../recipe/stripped_edified_wood.json | 17 ++ .../data/hexcasting/recipe/sub_sandwich.json | 27 +++ .../data/hexcasting/recipe/thought_knot.json | 16 ++ .../data/hexcasting/recipe/trinket.json | 21 ++ .../hexcasting/recipe/uuid_colorizer.json | 24 ++ .../tags/block/amethyst_blocks.json | 9 + .../block/brainswept_circle_components.json | 6 + .../tags/block/cheap_to_break_block.json | 6 + .../hexcasting/tags/block/directrices.json | 6 + .../hexcasting/tags/block/edified_logs.json | 12 + .../hexcasting/tags/block/edified_planks.json | 7 + .../data/hexcasting/tags/block/impeti.json | 7 + .../tags/block/quenched_allay_blocks.json | 8 + .../hexcasting/tags/block/slate_blocks.json | 9 + .../hexcasting/tags/block/water_plants.json | 8 + .../action/can_start_enlighten.json | 18 ++ .../hexcasting/action/per_world_pattern.json | 18 ++ .../action/requires_enlightenment.json | 18 ++ .../hexcasting/tags/item/amethyst_blocks.json | 9 + .../item/brainswept_circle_components.json | 6 + .../hexcasting/tags/item/directrices.json | 6 + .../hexcasting/tags/item/edified_logs.json | 12 + .../hexcasting/tags/item/edified_planks.json | 7 + .../tags/item/grants_root_advancement.json | 8 + .../data/hexcasting/tags/item/impeti.json | 7 + .../data/hexcasting/tags/item/phial_base.json | 5 + .../tags/item/quenched_allay_blocks.json | 8 + .../hexcasting/tags/item/seal_materials.json | 5 + .../hexcasting/tags/item/slate_blocks.json | 9 + .../data/hexcasting/tags/item/staves.json | 18 ++ .../data/minecraft/tags/block/buttons.json | 5 + .../tags/block/crystal_sound_blocks.json | 8 + .../data/minecraft/tags/block/doors.json | 5 + .../minecraft/tags/block/fence_gates.json | 5 + .../data/minecraft/tags/block/fences.json | 5 + .../data/minecraft/tags/block/leaves.json | 7 + .../data/minecraft/tags/block/logs.json | 12 + .../minecraft/tags/block/logs_that_burn.json | 12 + .../minecraft/tags/block/mineable/axe.json | 25 +++ .../minecraft/tags/block/mineable/hoe.json | 7 + .../tags/block/mineable/pickaxe.json | 30 +++ .../minecraft/tags/block/mineable/shovel.json | 5 + .../data/minecraft/tags/block/planks.json | 7 + .../minecraft/tags/block/pressure_plates.json | 5 + .../data/minecraft/tags/block/slabs.json | 5 + .../data/minecraft/tags/block/stairs.json | 5 + .../data/minecraft/tags/block/trapdoors.json | 5 + .../tags/block/unstable_bottom_center.json | 5 + .../minecraft/tags/block/wooden_buttons.json | 5 + .../minecraft/tags/block/wooden_doors.json | 5 + .../minecraft/tags/block/wooden_fences.json | 6 + .../tags/block/wooden_pressure_plates.json | 5 + .../minecraft/tags/block/wooden_slabs.json | 5 + .../minecraft/tags/block/wooden_stairs.json | 5 + .../tags/block/wooden_trapdoors.json | 5 + .../tags/damage_type/bypasses_armor.json | 5 + .../tags/damage_type/bypasses_effects.json | 5 + .../tags/damage_type/bypasses_shield.json | 5 + .../data/minecraft/tags/item/buttons.json | 5 + .../data/minecraft/tags/item/doors.json | 5 + .../data/minecraft/tags/item/leaves.json | 7 + .../data/minecraft/tags/item/logs.json | 12 + .../minecraft/tags/item/logs_that_burn.json | 12 + .../data/minecraft/tags/item/planks.json | 7 + .../data/minecraft/tags/item/slabs.json | 5 + .../data/minecraft/tags/item/trapdoors.json | 5 + .../minecraft/tags/item/wooden_buttons.json | 5 + .../minecraft/tags/item/wooden_doors.json | 5 + .../tags/item/wooden_pressure_plates.json | 5 + .../minecraft/tags/item/wooden_slabs.json | 5 + .../minecraft/tags/item/wooden_trapdoors.json | 5 + .../loot_modifiers/global_loot_modifiers.json | 39 ++++ 2409 files changed, 41618 insertions(+) create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/conjured.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/abacus.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/battery.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/lens.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/birch.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/edified.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/oak.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json create mode 100644 Common/src/generated/resources/assets/hexcasting/models/staff/warped.json create mode 100644 Common/src/generated/resources/data/create/tags/block/brittle.json create mode 100644 Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json create mode 100644 Common/src/generated/resources/data/forge/tags/item/gems.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/root.json create mode 100644 Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json create mode 100644 Common/src/generated/resources/data/hexcasting/damage_type/overcast.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/abacus.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/artifact.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/cypher.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_button.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_door.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/focus.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/lens.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_block.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/spellbook.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/trinket.json create mode 100644 Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/directrices.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/impeti.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/directrices.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/impeti.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json create mode 100644 Common/src/generated/resources/data/hexcasting/tags/item/staves.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/buttons.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/doors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/fences.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/leaves.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/logs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/planks.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/slabs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/stairs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/buttons.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/doors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/leaves.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/logs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/planks.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/slabs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json create mode 100644 Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json create mode 100644 Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json create mode 100644 Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json create mode 100644 Fabric/src/generated/resources/data/c/tags/item/gems.json create mode 100644 Fabric/src/generated/resources/data/create/tags/block/brittle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/lens.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json create mode 100644 Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/fences.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/planks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/planks.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json create mode 100644 Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/create/tags/block/brittle.json create mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json create mode 100644 Neoforge/src/generated/resources/data/forge/tags/item/gems.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/root.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json create mode 100644 Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json create mode 100644 Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json create mode 100644 Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json new file mode 100644 index 0000000000..2f79ec12a3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json @@ -0,0 +1,107 @@ +{ + "variants": { + "facing=east,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 90 + }, + "facing=east,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 90 + } + ], + "facing=north,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true + }, + "facing=north,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true + } + ], + "facing=south,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 180 + }, + "facing=south,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 180 + } + ], + "facing=west,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 270 + }, + "facing=west,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 270 + } + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json new file mode 100644 index 0000000000..c4552b4918 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_ligature" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json new file mode 100644 index 0000000000..c2aa512a1e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_record" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json new file mode 100644 index 0000000000..267e1b4d43 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json new file mode 100644 index 0000000000..66b78f9a12 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks_small" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json new file mode 100644 index 0000000000..c27c62ffcb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_dust_block" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json new file mode 100644 index 0000000000..db8af585b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json new file mode 100644 index 0000000000..257e10ca4d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json @@ -0,0 +1,30 @@ +{ + "variants": { + "facing=down": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 180 + }, + "facing=east": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 90 + }, + "facing=north": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90 + }, + "facing=south": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 180 + }, + "facing=up": { + "model": "hexcasting:block/deco/amethyst_pillar" + }, + "facing=west": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json new file mode 100644 index 0000000000..03a9ebb676 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 180 + }, + "facing=down,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 180 + }, + "facing=east,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 90 + }, + "facing=east,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 90 + }, + "facing=north,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90 + }, + "facing=north,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90 + }, + "facing=south,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 180 + }, + "facing=south,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 180 + }, + "facing=up,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce" + }, + "facing=up,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce" + }, + "facing=west,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 270 + }, + "facing=west,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json new file mode 100644 index 0000000000..b716f2a5a9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json new file mode 100644 index 0000000000..1c809c022b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..3a632c39f3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json new file mode 100644 index 0000000000..10383418f7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/aventurine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json new file mode 100644 index 0000000000..3207814e50 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/citrine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json new file mode 100644 index 0000000000..155f55cfe6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json @@ -0,0 +1,142 @@ +{ + "variants": { + "energized=false,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_down", + "x": 90 + }, + "energized=false,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_down", + "x": 90 + }, + "energized=false,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_down", + "x": 90 + }, + "energized=false,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_east", + "y": 90 + }, + "energized=false,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_east", + "y": 90 + }, + "energized=false,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_east", + "y": 90 + }, + "energized=false,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_north" + }, + "energized=false,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_north" + }, + "energized=false,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_north" + }, + "energized=false,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_south", + "y": 180 + }, + "energized=false,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_south", + "y": 180 + }, + "energized=false,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_south", + "y": 180 + }, + "energized=false,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_up", + "x": -90 + }, + "energized=false,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_up", + "x": -90 + }, + "energized=false,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_up", + "x": -90 + }, + "energized=false,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_west", + "y": 270 + }, + "energized=false,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_west", + "y": 270 + }, + "energized=false,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_west", + "y": 270 + }, + "energized=true,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_down", + "x": 90 + }, + "energized=true,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_down", + "x": 90 + }, + "energized=true,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_down", + "x": 90 + }, + "energized=true,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_east", + "y": 90 + }, + "energized=true,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_east", + "y": 90 + }, + "energized=true,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_east", + "y": 90 + }, + "energized=true,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_north" + }, + "energized=true,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_north" + }, + "energized=true,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_north" + }, + "energized=true,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_south", + "y": 180 + }, + "energized=true,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_south", + "y": 180 + }, + "energized=true,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_south", + "y": 180 + }, + "energized=true,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_up", + "x": -90 + }, + "energized=true,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_up", + "x": -90 + }, + "energized=true,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_up", + "x": -90 + }, + "energized=true,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_west", + "y": 270 + }, + "energized=true,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_west", + "y": 270 + }, + "energized=true,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json new file mode 100644 index 0000000000..33b013562c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json new file mode 100644 index 0000000000..c93068cabf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json new file mode 100644 index 0000000000..81efad6fd6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_button.json @@ -0,0 +1,118 @@ +{ + "variants": { + "face=ceiling,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180 + }, + "face=ceiling,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180 + }, + "face=ceiling,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 90 + }, + "face=ceiling,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 90 + }, + "face=floor,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 90 + }, + "face=floor,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 90 + }, + "face=floor,facing=north,powered=false": { + "model": "hexcasting:block/edified_button" + }, + "face=floor,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed" + }, + "face=floor,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 180 + }, + "face=floor,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 180 + }, + "face=floor,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 270 + }, + "face=floor,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 270 + }, + "face=wall,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 270 + }, + "face=wall,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json new file mode 100644 index 0000000000..029d3bd5d2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_door.json @@ -0,0 +1,124 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left" + }, + "facing=east,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 90 + }, + "facing=east,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right" + }, + "facing=east,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 270 + }, + "facing=east,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left" + }, + "facing=east,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 90 + }, + "facing=east,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right" + }, + "facing=east,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open" + }, + "facing=north,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 270 + }, + "facing=north,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 180 + }, + "facing=north,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 270 + }, + "facing=north,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open" + }, + "facing=north,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 270 + }, + "facing=north,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 180 + }, + "facing=south,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 90 + }, + "facing=south,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 180 + }, + "facing=south,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 90 + }, + "facing=south,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open" + }, + "facing=south,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 90 + }, + "facing=south,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 180 + }, + "facing=south,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 90 + }, + "facing=south,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open" + }, + "facing=west,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 180 + }, + "facing=west,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 270 + }, + "facing=west,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 180 + }, + "facing=west,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 90 + }, + "facing=west,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 180 + }, + "facing=west,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 270 + }, + "facing=west,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 180 + }, + "facing=west,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json new file mode 100644 index 0000000000..7167013cf7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json @@ -0,0 +1,48 @@ +{ + "multipart": [ + { + "apply": { + "model": "hexcasting:block/edified_fence_post" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true + }, + "when": { + "north": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 180 + }, + "when": { + "south": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 270 + }, + "when": { + "west": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 90 + }, + "when": { + "east": "true" + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json new file mode 100644 index 0000000000..f925ddfddd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json @@ -0,0 +1,80 @@ +{ + "variants": { + "facing=east,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 270 + }, + "facing=north,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 180 + }, + "facing=south,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true + }, + "facing=south,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true + }, + "facing=south,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true + }, + "facing=south,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true + }, + "facing=west,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json new file mode 100644 index 0000000000..4cd8fe5d14 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json new file mode 100644 index 0000000000..7526dda321 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_amethyst" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json new file mode 100644 index 0000000000..ed8e454e7e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_aventurine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json new file mode 100644 index 0000000000..258b377acb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_citrine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json new file mode 100644 index 0000000000..078f72a986 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_purple" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json new file mode 100644 index 0000000000..17d99a7903 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_panel" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json new file mode 100644 index 0000000000..a2d790f061 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json @@ -0,0 +1,17 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/edified_planks", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_2", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_3" + } + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json new file mode 100644 index 0000000000..6da4bab988 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json @@ -0,0 +1,10 @@ +{ + "variants": { + "powered=false": { + "model": "hexcasting:block/edified_pressure_plate" + }, + "powered=true": { + "model": "hexcasting:block/edified_pressure_plate_down" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json new file mode 100644 index 0000000000..6a4d4be0d2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json @@ -0,0 +1,13 @@ +{ + "variants": { + "type=bottom": { + "model": "hexcasting:block/edified_slab" + }, + "type=double": { + "model": "hexcasting:block/edified_planks" + }, + "type=top": { + "model": "hexcasting:block/edified_slab_top" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json new file mode 100644 index 0000000000..23ac40ca7e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json new file mode 100644 index 0000000000..23d71da006 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_tile" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json new file mode 100644 index 0000000000..0df527ca32 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 90 + }, + "facing=east,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 90 + }, + "facing=east,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 90 + }, + "facing=east,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 270 + }, + "facing=north,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom" + }, + "facing=north,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open" + }, + "facing=north,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top" + }, + "facing=north,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 180 + }, + "facing=south,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 180 + }, + "facing=south,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 180 + }, + "facing=south,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 180 + }, + "facing=south,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180 + }, + "facing=west,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 270 + }, + "facing=west,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 270 + }, + "facing=west,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 270 + }, + "facing=west,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json new file mode 100644 index 0000000000..1d963101fc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json new file mode 100644 index 0000000000..057ad53aa6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json new file mode 100644 index 0000000000..0db9af4b2d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/look/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/look/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/look/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/look/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/look/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/look/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/look/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/look/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/look/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/look/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/look/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/look/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json new file mode 100644 index 0000000000..2ad46e21cd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json new file mode 100644 index 0000000000..32a772b27e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json new file mode 100644 index 0000000000..c6bce09cb5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json new file mode 100644 index 0000000000..e3d66f7ed3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..72aad9ca91 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks_small" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json new file mode 100644 index 0000000000..ddb791a0b1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_tiles" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json new file mode 100644 index 0000000000..2621fa1b04 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json new file mode 100644 index 0000000000..328e1b46d9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json new file mode 100644 index 0000000000..8d7a817cc1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate.json @@ -0,0 +1,122 @@ +{ + "variants": { + "energized=false,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=false,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=false,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=false,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + }, + "energized=true,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=true,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=true,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=true,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json new file mode 100644 index 0000000000..e99315f3fa --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_2" + } + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..e6b5557c2f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json new file mode 100644 index 0000000000..056bc449b3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_amethyst_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json new file mode 100644 index 0000000000..4c5f5d614b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json new file mode 100644 index 0000000000..35169aaa2f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/slate_block" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json new file mode 100644 index 0000000000..003a0daafe --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json new file mode 100644 index 0000000000..cdd21fd4d3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks_small" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json new file mode 100644 index 0000000000..6d0e098f31 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json new file mode 100644 index 0000000000..1482ae0827 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_tiles" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json new file mode 100644 index 0000000000..cb09f0122f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_log" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json new file mode 100644 index 0000000000..b6b89e3f85 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json new file mode 100644 index 0000000000..dd5103c118 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json @@ -0,0 +1,68 @@ +{ + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#top_bottom" + }, + "east": { + "cullface": "east", + "texture": "#side" + }, + "north": { + "cullface": "north", + "texture": "#front" + }, + "south": { + "cullface": "south", + "texture": "#side" + }, + "up": { + "cullface": "up", + "texture": "#top_bottom" + }, + "west": { + "cullface": "west", + "texture": "#side" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "north": { + "cullface": "north", + "texture": "#overlay", + "tintindex": 0 + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + } + ], + "render_type": "minecraft:cutout", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "particle": "hexcasting:block/akashic_bookshelf_vert", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top_bottom": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json new file mode 100644 index 0000000000..2402c6c597 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json new file mode 100644 index 0000000000..4846d3c2e6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json new file mode 100644 index 0000000000..9352317b12 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json new file mode 100644 index 0000000000..4f98ee656b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json new file mode 100644 index 0000000000..9b788e5d7c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/orientable", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json new file mode 100644 index 0000000000..72a32c3aa8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json new file mode 100644 index 0000000000..7068b7d62f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/akashic_record.json @@ -0,0 +1,87 @@ +{ + "parent": "minecraft:block/block", + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#outer" + }, + "east": { + "cullface": "east", + "texture": "#outer" + }, + "north": { + "cullface": "north", + "texture": "#outer" + }, + "south": { + "cullface": "south", + "texture": "#outer" + }, + "up": { + "cullface": "up", + "texture": "#outer" + }, + "west": { + "cullface": "west", + "texture": "#outer" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "down": { + "rotation": 180, + "texture": "#inner" + }, + "east": { + "rotation": 180, + "texture": "#inner" + }, + "north": { + "rotation": 180, + "texture": "#inner" + }, + "south": { + "rotation": 180, + "texture": "#inner" + }, + "up": { + "rotation": 180, + "texture": "#inner" + }, + "west": { + "rotation": 180, + "texture": "#inner" + } + }, + "from": [ + 15.75, + 15.75, + 15.75 + ], + "to": [ + 0.25, + 0.25, + 0.25 + ] + } + ], + "render_type": "minecraft:translucent", + "textures": { + "inner": "hexcasting:block/akashic_ligature", + "outer": "hexcasting:block/akashic_record", + "particle": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json new file mode 100644 index 0000000000..8fa450ab32 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/cube_half_mirrored", + "textures": { + "all": "hexcasting:block/amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json new file mode 100644 index 0000000000..463617eb53 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/amethyst_edified_leaves" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json new file mode 100644 index 0000000000..5b5b77bbf0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..19fc5366df --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/ancient_scroll_paper_lantern_bottom", + "side": "hexcasting:block/ancient_scroll_paper_lantern_side", + "top": "hexcasting:block/ancient_scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json new file mode 100644 index 0000000000..eb1802e0b9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/aventurine_edified_leaves" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json new file mode 100644 index 0000000000..3bef12c734 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/citrine_edified_leaves" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json b/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json new file mode 100644 index 0000000000..9f80c11ee0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/conjured.json @@ -0,0 +1,6 @@ +{ + "render_type": "minecraft:cutout", + "textures": { + "particle": "minecraft:block/amethyst_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json new file mode 100644 index 0000000000..89c8ec51c2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json new file mode 100644 index 0000000000..fc1202b603 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json new file mode 100644 index 0000000000..5ee8934b7a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/deco/amethyst_pillar_bottom", + "side": "hexcasting:block/deco/amethyst_pillar_side", + "top": "hexcasting:block/deco/amethyst_pillar_top" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json new file mode 100644 index 0000000000..ab9ffcda39 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json new file mode 100644 index 0000000000..61215cda68 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json new file mode 100644 index 0000000000..536da9000b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json new file mode 100644 index 0000000000..e45bf99d14 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json new file mode 100644 index 0000000000..91ade20515 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json new file mode 100644 index 0000000000..e6b6bd7b22 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json new file mode 100644 index 0000000000..7da0cdfcf8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json new file mode 100644 index 0000000000..6d6150b8d5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json new file mode 100644 index 0000000000..758194fe82 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json new file mode 100644 index 0000000000..5c83c33eb0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json new file mode 100644 index 0000000000..910ec09904 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json new file mode 100644 index 0000000000..4d565a54ae --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json new file mode 100644 index 0000000000..a9072bacc0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json new file mode 100644 index 0000000000..ad3c92af5d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json new file mode 100644 index 0000000000..1f24ff9a6d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json new file mode 100644 index 0000000000..e106adbead --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json new file mode 100644 index 0000000000..2c80ba1498 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json new file mode 100644 index 0000000000..7fb51bcd7c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json new file mode 100644 index 0000000000..3b262eafff --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json new file mode 100644 index 0000000000..d18efee914 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json new file mode 100644 index 0000000000..1c75ef18d3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json new file mode 100644 index 0000000000..a026dba7ad --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_pressed", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json new file mode 100644 index 0000000000..610c3ae5b9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json new file mode 100644 index 0000000000..acf2e96275 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json new file mode 100644 index 0000000000..2eaa905b77 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json new file mode 100644 index 0000000000..8a46564f74 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json new file mode 100644 index 0000000000..90ea9df1d9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json new file mode 100644 index 0000000000..5573390683 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json new file mode 100644 index 0000000000..3a78e863b7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json new file mode 100644 index 0000000000..26d8c1a200 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json new file mode 100644 index 0000000000..c3015ca6d3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json new file mode 100644 index 0000000000..ac141eb406 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json new file mode 100644 index 0000000000..ea98b16740 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json new file mode 100644 index 0000000000..86d82ca2fc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json new file mode 100644 index 0000000000..281f2acc6d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json new file mode 100644 index 0000000000..707af51bf2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_side", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json new file mode 100644 index 0000000000..9ba1530b0c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json new file mode 100644 index 0000000000..e9833c81a8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json new file mode 100644 index 0000000000..fdfc8bd1c1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json new file mode 100644 index 0000000000..f9f832f6ee --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json new file mode 100644 index 0000000000..e7ddcd8ed5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json new file mode 100644 index 0000000000..ea1b1d60a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json new file mode 100644 index 0000000000..2ae70b9aef --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json new file mode 100644 index 0000000000..84e434e72a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json new file mode 100644 index 0000000000..70736370d2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json new file mode 100644 index 0000000000..235890db18 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json new file mode 100644 index 0000000000..3d790f2af0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_panel.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_panel" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json new file mode 100644 index 0000000000..a722301054 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json new file mode 100644 index 0000000000..d0c4c5832b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json new file mode 100644 index 0000000000..bad8e6ac05 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json new file mode 100644 index 0000000000..5a1b2b5727 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_up", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json new file mode 100644 index 0000000000..eeaa36461c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_down", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json new file mode 100644 index 0000000000..09d601ec7b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json new file mode 100644 index 0000000000..f4d2fcf98c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab_top", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json new file mode 100644 index 0000000000..6e9ae9aaae --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json new file mode 100644 index 0000000000..7597f2c8a4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/inner_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json new file mode 100644 index 0000000000..62d7ab50a9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/outer_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json new file mode 100644 index 0000000000..595adf007a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_tile" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json new file mode 100644 index 0000000000..9c65b36965 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_bottom", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json new file mode 100644 index 0000000000..40217afd9c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_open", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json new file mode 100644 index 0000000000..325f5d4351 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_top", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json new file mode 100644 index 0000000000..22851df079 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json new file mode 100644 index 0000000000..72149b4bc9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json new file mode 100644 index 0000000000..441d91052a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json new file mode 100644 index 0000000000..a561a358cc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json new file mode 100644 index 0000000000..a6fe237391 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json new file mode 100644 index 0000000000..621451b72c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/scroll_paper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json new file mode 100644 index 0000000000..3c16a2113f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/scroll_paper_lantern_bottom", + "side": "hexcasting:block/scroll_paper_lantern_side", + "top": "hexcasting:block/scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1ec3ef6cf3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json new file mode 100644 index 0000000000..bbd24d1c98 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json new file mode 100644 index 0000000000..2d8635f925 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/slate_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json new file mode 100644 index 0000000000..697f4daab2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json new file mode 100644 index 0000000000..cca16a0c07 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json new file mode 100644 index 0000000000..4aa871e92c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json new file mode 100644 index 0000000000..0925c23c78 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json new file mode 100644 index 0000000000..8ef17c0d21 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json new file mode 100644 index 0000000000..57dcfcc53c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json b/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json new file mode 100644 index 0000000000..f6947c4360 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/abacus.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/abacus" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json new file mode 100644 index 0000000000..7c88c3e218 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf_empty" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json new file mode 100644 index 0000000000..de9a37be49 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_ligature" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json new file mode 100644 index 0000000000..1ea5e0eeb6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/akashic_record.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_record" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json new file mode 100644 index 0000000000..5ec0842948 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json new file mode 100644 index 0000000000..1b8fe48dd2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json new file mode 100644 index 0000000000..140659dfab --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/amethyst_dust" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json new file mode 100644 index 0000000000..8cd53fc3ab --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_dust_block" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json new file mode 100644 index 0000000000..d6015ea1f2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json new file mode 100644 index 0000000000..98d9d0c82f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json new file mode 100644 index 0000000000..bb1657f9a1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_sconce" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json new file mode 100644 index 0000000000..b8ecd40c70 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json new file mode 100644 index 0000000000..8e99cad0e1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/ancient" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json new file mode 100644 index 0000000000..ffc8b5e1cc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/ancient_cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json new file mode 100644 index 0000000000..b38ad18d6d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher", + "layer1": "hexcasting:item/cad/0_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json new file mode 100644 index 0000000000..e8b7b12d55 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json new file mode 100644 index 0000000000..856b0a26d7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher", + "layer1": "hexcasting:item/cad/1_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json new file mode 100644 index 0000000000..3badfcdd0f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json new file mode 100644 index 0000000000..effb9e0198 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher", + "layer1": "hexcasting:item/cad/2_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json new file mode 100644 index 0000000000..98aabd91e8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json new file mode 100644 index 0000000000..2f19e9feea --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher", + "layer1": "hexcasting:item/cad/3_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json new file mode 100644 index 0000000000..93318f7bc4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json new file mode 100644 index 0000000000..081cfd65c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher", + "layer1": "hexcasting:item/cad/4_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json new file mode 100644 index 0000000000..836e50f966 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json new file mode 100644 index 0000000000..2ab2d47128 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher", + "layer1": "hexcasting:item/cad/5_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json new file mode 100644 index 0000000000..bf9c9fe505 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json new file mode 100644 index 0000000000..199292d90f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher", + "layer1": "hexcasting:item/cad/6_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json new file mode 100644 index 0000000000..56e0653080 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json new file mode 100644 index 0000000000..b408892c14 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher", + "layer1": "hexcasting:item/cad/7_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json new file mode 100644 index 0000000000..810d0e68c5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..39cf0ac289 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json new file mode 100644 index 0000000000..d0db0e434f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/artifact", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/artifact_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json new file mode 100644 index 0000000000..1e835b5f74 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_artifact", + "layer1": "hexcasting:item/cad/0_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json new file mode 100644 index 0000000000..870900b6f1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json new file mode 100644 index 0000000000..a0f005be3f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact", + "layer1": "hexcasting:item/cad/1_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json new file mode 100644 index 0000000000..f2f7fbea97 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json new file mode 100644 index 0000000000..cade3931d1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact", + "layer1": "hexcasting:item/cad/2_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json new file mode 100644 index 0000000000..2cb6553e13 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json new file mode 100644 index 0000000000..23c0456285 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact", + "layer1": "hexcasting:item/cad/3_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json new file mode 100644 index 0000000000..216c308d2c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json new file mode 100644 index 0000000000..d48959f9d1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact", + "layer1": "hexcasting:item/cad/4_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json new file mode 100644 index 0000000000..d3ca0607a4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json new file mode 100644 index 0000000000..50a87b02a5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact", + "layer1": "hexcasting:item/cad/5_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json new file mode 100644 index 0000000000..c66d93ec85 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json new file mode 100644 index 0000000000..3d5f969ddf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact", + "layer1": "hexcasting:item/cad/6_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json new file mode 100644 index 0000000000..1b89f90904 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json new file mode 100644 index 0000000000..0e9043060d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact", + "layer1": "hexcasting:item/cad/7_artifact_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json new file mode 100644 index 0000000000..0ae3302116 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/battery.json b/Common/src/generated/resources/assets/hexcasting/models/item/battery.json new file mode 100644 index 0000000000..11be0c6cd1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/battery.json @@ -0,0 +1,179 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/phial_small_0", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_small_1", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_small_2", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_small_3", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_small_4", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_medium_0", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_medium_1", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_medium_2", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_medium_3", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_medium_4", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_large_0", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_large_1", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_large_2", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_large_3", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_large_4", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_larger_0", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_larger_1", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_larger_2", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_larger_3", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_larger_4", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_largest_0", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_largest_1", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_largest_2", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_largest_3", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_largest_4", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json new file mode 100644 index 0000000000..2d147958cb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/charged_amethyst" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json b/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json b/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json new file mode 100644 index 0000000000..f44ca6c924 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/conjured_light.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json b/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json new file mode 100644 index 0000000000..452b44f612 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/creative_unlocker" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json new file mode 100644 index 0000000000..1a93187096 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json new file mode 100644 index 0000000000..190be7e602 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_cypher", + "layer1": "hexcasting:item/cad/0_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json new file mode 100644 index 0000000000..71a9ff7cc0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json new file mode 100644 index 0000000000..abff99cd2f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher", + "layer1": "hexcasting:item/cad/1_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json new file mode 100644 index 0000000000..f7b22a7958 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json new file mode 100644 index 0000000000..75143f8a30 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher", + "layer1": "hexcasting:item/cad/2_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json new file mode 100644 index 0000000000..da55138305 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json new file mode 100644 index 0000000000..cbac2eaf44 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher", + "layer1": "hexcasting:item/cad/3_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json new file mode 100644 index 0000000000..90430a8f8a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json new file mode 100644 index 0000000000..e56ed90c0a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher", + "layer1": "hexcasting:item/cad/4_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json new file mode 100644 index 0000000000..83f0da6e92 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json new file mode 100644 index 0000000000..9561773539 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher", + "layer1": "hexcasting:item/cad/5_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json new file mode 100644 index 0000000000..bdb310d836 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json new file mode 100644 index 0000000000..f9ed07c951 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher", + "layer1": "hexcasting:item/cad/6_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json new file mode 100644 index 0000000000..29e4768e9a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json new file mode 100644 index 0000000000..2de0bb8752 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher", + "layer1": "hexcasting:item/cad/7_cypher_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json new file mode 100644 index 0000000000..9041330dd9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/default" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json new file mode 100644 index 0000000000..cd729d804c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/boolean/lit_false_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json new file mode 100644 index 0000000000..98be3ef487 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/empty/dim_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json new file mode 100644 index 0000000000..e2b947d5a9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json new file mode 100644 index 0000000000..2f55b6c22b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_black" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json new file mode 100644 index 0000000000..add421a999 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_blue" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json new file mode 100644 index 0000000000..3be301eb1a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_brown" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json new file mode 100644 index 0000000000..c436f3155b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_cyan" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json new file mode 100644 index 0000000000..146f01411c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_gray" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json new file mode 100644 index 0000000000..679f147944 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_green" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..433877e853 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_blue" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..f5625b67c2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_gray" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json new file mode 100644 index 0000000000..c1cf22959e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_lime" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json new file mode 100644 index 0000000000..12dcaa82c4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_magenta" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json new file mode 100644 index 0000000000..99679c17f8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_orange" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json new file mode 100644 index 0000000000..c138e93ff0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_pink" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json new file mode 100644 index 0000000000..d31e3b601c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_purple" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json new file mode 100644 index 0000000000..1fb8f9dd4d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_red" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json new file mode 100644 index 0000000000..db4d15eb32 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_white" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json new file mode 100644 index 0000000000..594bb0a09d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_yellow" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json new file mode 100644 index 0000000000..e18736c2c8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_inventory", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json new file mode 100644 index 0000000000..5d6fb8d7ff --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_door.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/edified_door" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json new file mode 100644 index 0000000000..db31b01904 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_inventory" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json new file mode 100644 index 0000000000..3dfe521195 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_gate" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json new file mode 100644 index 0000000000..d3c7aeeb06 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json new file mode 100644 index 0000000000..8e80eb679a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_amethyst" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json new file mode 100644 index 0000000000..45007ec40b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_aventurine" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json new file mode 100644 index 0000000000..9cae394851 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_citrine" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json new file mode 100644 index 0000000000..62c67453ce --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_purple" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json new file mode 100644 index 0000000000..355e2765e1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_panel.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_panel" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json new file mode 100644 index 0000000000..4ed5d45aab --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_planks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json new file mode 100644 index 0000000000..921f7f5bd0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_pressure_plate" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json new file mode 100644 index 0000000000..4772af6ed1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_slab" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json new file mode 100644 index 0000000000..90eb4d5123 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_stairs" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json new file mode 100644 index 0000000000..05702f6ed8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_tile" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json new file mode 100644 index 0000000000..8c89f1e881 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_trapdoor_bottom" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json new file mode 100644 index 0000000000..c9bfee3a01 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_wood" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus.json new file mode 100644 index 0000000000..78328a9dee --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/focus", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json new file mode 100644 index 0000000000..508a3497f6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_filled", + "layer1": "hexcasting:item/cad/0_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json new file mode 100644 index 0000000000..0a64292241 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_sealed", + "layer1": "hexcasting:item/cad/0_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json new file mode 100644 index 0000000000..75d8bf400d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json new file mode 100644 index 0000000000..bd04934627 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_filled", + "layer1": "hexcasting:item/cad/1_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json new file mode 100644 index 0000000000..001bf05b5a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_sealed", + "layer1": "hexcasting:item/cad/1_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json new file mode 100644 index 0000000000..a9ef859978 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json new file mode 100644 index 0000000000..05c2799dfc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_filled", + "layer1": "hexcasting:item/cad/2_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json new file mode 100644 index 0000000000..1c7c230bef --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_sealed", + "layer1": "hexcasting:item/cad/2_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json new file mode 100644 index 0000000000..fb366d08b2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json new file mode 100644 index 0000000000..3ad27dfcdf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_filled", + "layer1": "hexcasting:item/cad/3_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json new file mode 100644 index 0000000000..447b7b4198 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_sealed", + "layer1": "hexcasting:item/cad/3_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json new file mode 100644 index 0000000000..a3c1bf4eb2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json new file mode 100644 index 0000000000..8b9eb2024f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_filled", + "layer1": "hexcasting:item/cad/4_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json new file mode 100644 index 0000000000..2831235f44 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_sealed", + "layer1": "hexcasting:item/cad/4_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json new file mode 100644 index 0000000000..e13b4fa14b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json new file mode 100644 index 0000000000..cbac2be535 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_filled", + "layer1": "hexcasting:item/cad/5_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json new file mode 100644 index 0000000000..248801d925 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_sealed", + "layer1": "hexcasting:item/cad/5_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json new file mode 100644 index 0000000000..3bc3f8518f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json new file mode 100644 index 0000000000..e950df1223 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_filled", + "layer1": "hexcasting:item/cad/6_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json new file mode 100644 index 0000000000..c10282e6b1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_sealed", + "layer1": "hexcasting:item/cad/6_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json new file mode 100644 index 0000000000..8ad8085617 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json new file mode 100644 index 0000000000..e6d7b1f28d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_filled", + "layer1": "hexcasting:item/cad/7_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json new file mode 100644 index 0000000000..52d149f4ae --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_sealed", + "layer1": "hexcasting:item/cad/7_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json new file mode 100644 index 0000000000..68e7192da1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/empty/dim_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json new file mode 100644 index 0000000000..73f69303be --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/look.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/look/lit_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json new file mode 100644 index 0000000000..523b5343b6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/redstone/lit_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json new file mode 100644 index 0000000000..381232171f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/rightclick/lit_east" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json b/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json new file mode 100644 index 0000000000..22447e1fbd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/jeweler_hammer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/lens.json b/Common/src/generated/resources/assets/hexcasting/models/item/lens.json new file mode 100644 index 0000000000..2fdc8f9ce5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/lens.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "display": { + "head": { + "scale": [ + 0.4, + 0.4, + 0.4 + ], + "translation": [ + -2.5, + 0, + -8 + ] + } + }, + "textures": { + "layer0": "hexcasting:item/lens" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json b/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json new file mode 100644 index 0000000000..2b2f9e66fa --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/lore_fragment" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json b/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json new file mode 100644 index 0000000000..f40e6b8ab1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/old_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/old" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json b/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json new file mode 100644 index 0000000000..a840c0e427 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/patchouli_book" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json new file mode 100644 index 0000000000..db3db02acd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json new file mode 100644 index 0000000000..bdff2d1022 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json new file mode 100644 index 0000000000..9c09bea449 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json new file mode 100644 index 0000000000..085960c8d8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json new file mode 100644 index 0000000000..c39357f8de --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json new file mode 100644 index 0000000000..d5e18bb295 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json new file mode 100644 index 0000000000..b19928c486 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json new file mode 100644 index 0000000000..ac7ed775cc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json new file mode 100644 index 0000000000..b02ce98e95 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json new file mode 100644 index 0000000000..8b313df86f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json new file mode 100644 index 0000000000..0e44b418f2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json new file mode 100644 index 0000000000..4f456814f5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json new file mode 100644 index 0000000000..ab2bdf4a2b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json new file mode 100644 index 0000000000..10d70acab3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json new file mode 100644 index 0000000000..3c0682e560 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json new file mode 100644 index 0000000000..cb8b4c0920 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json new file mode 100644 index 0000000000..a7f30e8113 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json new file mode 100644 index 0000000000..f9f5615cf2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json new file mode 100644 index 0000000000..dbfcb528bd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json new file mode 100644 index 0000000000..a7501a8e1b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json new file mode 100644 index 0000000000..fda398e2d9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json new file mode 100644 index 0000000000..df784108aa --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json new file mode 100644 index 0000000000..f868032c36 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json new file mode 100644 index 0000000000..ce4a7999b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json new file mode 100644 index 0000000000..bde40839db --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_4" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json new file mode 100644 index 0000000000..9c68ff47ff --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_agender" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json new file mode 100644 index 0000000000..eb0fabc595 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aroace" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..7ea60f31e3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aromantic" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json new file mode 100644 index 0000000000..d40b1f2bcb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_asexual" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..e1d4b2d77f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_bisexual" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..cd0fe06093 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demiboy" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..afda4cabea --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demigirl" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json new file mode 100644 index 0000000000..353816c8ad --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_gay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..fe3641c797 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderfluid" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..270eeb011f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderqueer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json new file mode 100644 index 0000000000..506facd3de --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_intersex" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..61d110d4cc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_lesbian" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..0212b47a17 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_nonbinary" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json new file mode 100644 index 0000000000..706726a311 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_pansexual" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json new file mode 100644 index 0000000000..e6ecd7890e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_plural" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json new file mode 100644 index 0000000000..2655a8e596 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_transgender" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json new file mode 100644 index 0000000000..c6ee6b0951 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/quenched_allay_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json new file mode 100644 index 0000000000..c3a1b63856 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0e376a548 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json new file mode 100644 index 0000000000..495e817b78 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/quenched_shard_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json new file mode 100644 index 0000000000..5ea5cf33c5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_tiles_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json new file mode 100644 index 0000000000..bdd43ddc80 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json new file mode 100644 index 0000000000..4cffa2efe0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json new file mode 100644 index 0000000000..e24c8dafbf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json new file mode 100644 index 0000000000..208890fe3d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json new file mode 100644 index 0000000000..5453ed3ec6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_large", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_large", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json new file mode 100644 index 0000000000..192b9920a6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_large" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json new file mode 100644 index 0000000000..eccfe83cb7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_medium" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json new file mode 100644 index 0000000000..5f66417b21 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json new file mode 100644 index 0000000000..7752e9be45 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_medium", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_medium", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json new file mode 100644 index 0000000000..ee576746b9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json new file mode 100644 index 0000000000..8fafbd4a86 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json new file mode 100644 index 0000000000..0042b78487 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_large" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json new file mode 100644 index 0000000000..a219c7855d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_medium" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json new file mode 100644 index 0000000000..6405ebefb2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json new file mode 100644 index 0000000000..583fd0f3c8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/scroll_small.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_small", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_small", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate.json new file mode 100644 index 0000000000..146695e299 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/slate_blank", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/slate_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json new file mode 100644 index 0000000000..727a50c807 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_0" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..accf94f2b3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_small_0" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json new file mode 100644 index 0000000000..749887313c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e20b742c26 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json new file mode 100644 index 0000000000..df037ffa4b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_blank.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_blank" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json new file mode 100644 index 0000000000..c40e37f12b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_block" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json new file mode 100644 index 0000000000..adc880399e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json new file mode 100644 index 0000000000..4d0555b2c6 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json new file mode 100644 index 0000000000..8d6a18fa25 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json new file mode 100644 index 0000000000..c2bf7616b8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json b/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json new file mode 100644 index 0000000000..a17de30bf5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/slate_written.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_written" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json new file mode 100644 index 0000000000..5acb33c2cd --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/spellbook", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json new file mode 100644 index 0000000000..1727f3854d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_filled", + "layer1": "hexcasting:item/cad/0_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json new file mode 100644 index 0000000000..e580e3ceb5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_sealed", + "layer1": "hexcasting:item/cad/0_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json new file mode 100644 index 0000000000..6b832d7806 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json new file mode 100644 index 0000000000..3ded667934 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_filled", + "layer1": "hexcasting:item/cad/1_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json new file mode 100644 index 0000000000..91c0ed2bc4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_sealed", + "layer1": "hexcasting:item/cad/1_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json new file mode 100644 index 0000000000..2d1355b5e9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json new file mode 100644 index 0000000000..9af15dfbbb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_filled", + "layer1": "hexcasting:item/cad/2_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json new file mode 100644 index 0000000000..bd336d2d1a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_sealed", + "layer1": "hexcasting:item/cad/2_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json new file mode 100644 index 0000000000..e18eaf0d3c --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json new file mode 100644 index 0000000000..6b611c62b0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_filled", + "layer1": "hexcasting:item/cad/3_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json new file mode 100644 index 0000000000..25a265b6d3 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_sealed", + "layer1": "hexcasting:item/cad/3_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json new file mode 100644 index 0000000000..38cd5d8fc0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json new file mode 100644 index 0000000000..ebccd06cef --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_filled", + "layer1": "hexcasting:item/cad/4_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json new file mode 100644 index 0000000000..d281078d45 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_sealed", + "layer1": "hexcasting:item/cad/4_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json new file mode 100644 index 0000000000..2f82f7d8a2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json new file mode 100644 index 0000000000..99cc74e732 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_filled", + "layer1": "hexcasting:item/cad/5_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json new file mode 100644 index 0000000000..0a4a822a5b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_sealed", + "layer1": "hexcasting:item/cad/5_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json new file mode 100644 index 0000000000..608c5cdd24 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json new file mode 100644 index 0000000000..b47cfbac66 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_filled", + "layer1": "hexcasting:item/cad/6_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json new file mode 100644 index 0000000000..2fa15268d2 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_sealed", + "layer1": "hexcasting:item/cad/6_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json new file mode 100644 index 0000000000..1e7e436978 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json new file mode 100644 index 0000000000..8438b02ac0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_filled", + "layer1": "hexcasting:item/cad/7_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json new file mode 100644 index 0000000000..d91512283f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_sealed", + "layer1": "hexcasting:item/cad/7_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json new file mode 100644 index 0000000000..ea1bd514d1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/acacia" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json new file mode 100644 index 0000000000..cb00188989 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/bamboo" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json new file mode 100644 index 0000000000..c56b377279 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/birch.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/birch" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json new file mode 100644 index 0000000000..fa68214ae5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/crimson" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json new file mode 100644 index 0000000000..ef89b141c8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/dark_oak" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json new file mode 100644 index 0000000000..2ecbbaa4b8 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/edified.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/edified" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json new file mode 100644 index 0000000000..81fc631e34 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/jungle" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json new file mode 100644 index 0000000000..1d055a8943 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mangrove" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json new file mode 100644 index 0000000000..a2a679a5b5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mindsplice" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json new file mode 100644 index 0000000000..c9a35a19c7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/oak" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json new file mode 100644 index 0000000000..16e5858599 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/staff/quenched_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json new file mode 100644 index 0000000000..d34dbbfe48 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_0" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json new file mode 100644 index 0000000000..b3b4d49426 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_1" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json new file mode 100644 index 0000000000..9d34fae3ed --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_2" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json new file mode 100644 index 0000000000..61a55746b1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_3" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json new file mode 100644 index 0000000000..aa60185a6a --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/spruce" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json b/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json new file mode 100644 index 0000000000..4a157768aa --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/staff/warped.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/warped" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json new file mode 100644 index 0000000000..69e448436d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_log" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json new file mode 100644 index 0000000000..45e5b99e81 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_wood" +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json b/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json new file mode 100644 index 0000000000..c5dd346a84 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/sub_sandwich" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json new file mode 100644 index 0000000000..4a9917224b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/thought_knot", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/thought_knot_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/thought_knot" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json new file mode 100644 index 0000000000..f5b12c99d9 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/thought_knot", + "layer1": "hexcasting:item/thought_knot_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json new file mode 100644 index 0000000000..19102d169b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/trinket", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/trinket_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json new file mode 100644 index 0000000000..77da0e72e5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_trinket", + "layer1": "hexcasting:item/cad/0_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json new file mode 100644 index 0000000000..4eb168d7f1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json new file mode 100644 index 0000000000..80a274ce90 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket", + "layer1": "hexcasting:item/cad/1_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json new file mode 100644 index 0000000000..f38c5e5dc4 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json new file mode 100644 index 0000000000..6c60bb9486 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket", + "layer1": "hexcasting:item/cad/2_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json new file mode 100644 index 0000000000..4410e1a4ff --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json new file mode 100644 index 0000000000..4aea4da78e --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket", + "layer1": "hexcasting:item/cad/3_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json new file mode 100644 index 0000000000..87903d7d9b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json new file mode 100644 index 0000000000..9b61c263fb --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket", + "layer1": "hexcasting:item/cad/4_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json new file mode 100644 index 0000000000..7e5d29274b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json new file mode 100644 index 0000000000..0b07194441 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket", + "layer1": "hexcasting:item/cad/5_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json new file mode 100644 index 0000000000..6cc75f387d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json new file mode 100644 index 0000000000..bdd007f345 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket", + "layer1": "hexcasting:item/cad/6_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json new file mode 100644 index 0000000000..a2f57e04cc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json new file mode 100644 index 0000000000..e83c8fa4bc --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket", + "layer1": "hexcasting:item/cad/7_trinket_overlay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json b/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json new file mode 100644 index 0000000000..0b76dd8f8f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/uuid" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json b/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json new file mode 100644 index 0000000000..6a28f12462 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/acacia.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/acacia_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json b/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json new file mode 100644 index 0000000000..c0f063051f --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/bamboo.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/bamboo_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json b/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json new file mode 100644 index 0000000000..571e454dd7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/birch.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/birch_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json b/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json new file mode 100644 index 0000000000..9a663a248b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/cherry.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json b/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json new file mode 100644 index 0000000000..059589861d --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/crimson.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/crimson_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json b/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json new file mode 100644 index 0000000000..31dc19c0e5 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/dark_oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json b/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json new file mode 100644 index 0000000000..903e47409b --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/edified.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/edified_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json b/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json new file mode 100644 index 0000000000..06b8e032d0 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/jungle.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/jungle_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json b/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json new file mode 100644 index 0000000000..0d75f169c1 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/mangrove.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mangrove_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json b/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json new file mode 100644 index 0000000000..5c469011ad --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mindsplice_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json b/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json new file mode 100644 index 0000000000..8903a42caf --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json b/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json new file mode 100644 index 0000000000..3f3562c473 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/spruce.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/spruce_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json b/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json new file mode 100644 index 0000000000..62ab1990d7 --- /dev/null +++ b/Common/src/generated/resources/assets/hexcasting/models/staff/warped.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/warped_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/create/tags/block/brittle.json b/Common/src/generated/resources/data/create/tags/block/brittle.json new file mode 100644 index 0000000000..fb66be6093 --- /dev/null +++ b/Common/src/generated/resources/data/create/tags/block/brittle.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#hexcasting:slate", + "required": false + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json b/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json new file mode 100644 index 0000000000..d936f71efc --- /dev/null +++ b/Common/src/generated/resources/data/forge/tags/item/dusts/amethyst.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/forge/tags/item/gems.json b/Common/src/generated/resources/data/forge/tags/item/gems.json new file mode 100644 index 0000000000..6c55bdef92 --- /dev/null +++ b/Common/src/generated/resources/data/forge/tags/item/gems.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json new file mode 100644 index 0000000000..158691c260 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "waste_amt": { + "conditions": { + "health_used": { + "min": 89000 + }, + "media_generated": {} + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:wasteful_cast.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:glistering_melon_slice" + }, + "title": { + "translate": "advancement.hexcasting:wasteful_cast" + } + }, + "requirements": [ + [ + "waste_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json b/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json new file mode 100644 index 0000000000..4664381e91 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "cast_amt": { + "conditions": { + "health_used": {}, + "media_generated": { + "min": 6400000 + } + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:big_cast.desc" + }, + "icon": { + "count": 1, + "id": "hexcasting:charged_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:big_cast" + } + }, + "requirements": [ + [ + "cast_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json b/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json new file mode 100644 index 0000000000..66694b8389 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json @@ -0,0 +1,36 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "has_creative_unlocker": { + "conditions": { + "items": [ + { + "items": "hexcasting:creative_unlocker" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "announce_to_chat": false, + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:creative_unlocker.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:creative_unlocker" + }, + "title": { + "translate": "advancement.hexcasting:creative_unlocker" + } + }, + "requirements": [ + [ + "has_creative_unlocker" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json b/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json new file mode 100644 index 0000000000..6beb493204 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/enlightenment.json @@ -0,0 +1,38 @@ +{ + "parent": "hexcasting:opened_eyes", + "criteria": { + "health_used": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:enlightenment.desc" + }, + "frame": "challenge", + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:music_disc_11" + }, + "title": { + "translate": "advancement.hexcasting:enlightenment" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore.json b/Common/src/generated/resources/data/hexcasting/advancement/lore.json new file mode 100644 index 0000000000..42c9fd8c5f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore.json @@ -0,0 +1,32 @@ +{ + "criteria": { + "used_item": { + "conditions": { + "item": { + "items": "hexcasting:lore_fragment" + } + }, + "trigger": "minecraft:consume_item" + } + }, + "display": { + "background": "hexcasting:textures/block/slate_block.png", + "description": { + "translate": "advancement.hexcasting:lore.desc" + }, + "frame": "goal", + "icon": { + "count": 1, + "id": "hexcasting:akashic_ligature" + }, + "title": { + "translate": "advancement.hexcasting:lore" + } + }, + "requirements": [ + [ + "used_item" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json new file mode 100644 index 0000000000..314c3fa628 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json new file mode 100644 index 0000000000..6f3e2b9d20 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json new file mode 100644 index 0000000000..2147c12792 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom3" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json new file mode 100644 index 0000000000..1374bfcca4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom4" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json new file mode 100644 index 0000000000..06c329a939 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom5" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json new file mode 100644 index 0000000000..9d2183c268 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json new file mode 100644 index 0000000000..4ac3cadb4f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json b/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json new file mode 100644 index 0000000000..abef5eb653 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/lore/inventory.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/inventory" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json b/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json new file mode 100644 index 0000000000..89583b9134 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/opened_eyes.json @@ -0,0 +1,33 @@ +{ + "parent": "hexcasting:y_u_no_cast_angy", + "criteria": { + "health_used": { + "conditions": { + "health_used": {}, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.0 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:opened_eyes.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:ender_eye" + }, + "title": { + "translate": "advancement.hexcasting:opened_eyes" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json new file mode 100644 index 0000000000..d36fd4dc3b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_record" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_record" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..18f9ea380f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:budding_amethyst" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:budding_amethyst" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..31d9085f82 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_storedplayer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_storedplayer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json new file mode 100644 index 0000000000..a2abfd4999 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..4cfbe02fd1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..baefa8193d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json new file mode 100644 index 0000000000..96746726ec --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_packing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_packing" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..ff10efd290 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_unpacking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_unpacking" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json new file mode 100644 index 0000000000..a667163117 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json new file mode 100644 index 0000000000..8ae76d54a6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..ab1194da4a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json new file mode 100644 index 0000000000..31556a4ca8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json new file mode 100644 index 0000000000..1d09e6fdf8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence_gate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence_gate" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json new file mode 100644 index 0000000000..ab66016e10 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_panel" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json new file mode 100644 index 0000000000..f031431d00 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_logs" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_planks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json new file mode 100644 index 0000000000..317bd1fd11 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_slab" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json new file mode 100644 index 0000000000..069989ca28 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_stairs" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json new file mode 100644 index 0000000000..5179827061 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_tile" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_tile" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json new file mode 100644 index 0000000000..f0aaf4b1fd --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_wood" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..c37b71d284 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..ccd1d07d9c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..17e80c692e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..3c6b16fa0d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json new file mode 100644 index 0000000000..d676daa7f7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..ff2f402508 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..767c693c0a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..bf457b3afb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..ebaa53598d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json new file mode 100644 index 0000000000..770d62ab2b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json new file mode 100644 index 0000000000..b2f96c2797 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block_from_slates" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block_from_slates" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json new file mode 100644 index 0000000000..ba654692a5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..0380e1fa54 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_from_slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_from_slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..36c4038b5f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_small_from_slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_small_from_slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json new file mode 100644 index 0000000000..2b5db656e7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json new file mode 100644 index 0000000000..8013adb566 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..41dacf55e2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..b3874144f8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..d03fa6e83f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..960f240cc5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..7ffcabeb6c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0d0cdc21a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..d5b967aaa1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..29d6c05539 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..a3c3d9d49d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..a28270ce91 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..50b1e3d144 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..4d048fc250 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:stripped_edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stripped_edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stripped_edified_wood" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..6ae4bdbbb6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper_lantern" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ageing_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ageing_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json new file mode 100644 index 0000000000..91debb7ca5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_sconce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_sconce" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f36c1abfc2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:ancient_scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json new file mode 100644 index 0000000000..1bff0c5ff6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json new file mode 100644 index 0000000000..2dc4651527 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_medium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_medium" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json new file mode 100644 index 0000000000..63884d313e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json new file mode 100644 index 0000000000..2e68c56849 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_small" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json new file mode 100644 index 0000000000..551899a3a3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json new file mode 100644 index 0000000000..bb64c267e5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:sub_sandwich" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:sub_sandwich" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json new file mode 100644 index 0000000000..87bb27b0ac --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_colorizer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..b032476ae7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/charged" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/charged" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..299d8a4550 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/dust" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/dust" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..d9f9dfbb25 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/shard" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json new file mode 100644 index 0000000000..e04ea0f7b0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:default_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:default_colorizer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json new file mode 100644 index 0000000000..486da412cd --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_black" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_black" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json new file mode 100644 index 0000000000..c23b00add5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_blue" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json new file mode 100644 index 0000000000..daf49d8674 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_brown" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_brown" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json new file mode 100644 index 0000000000..bc159a4f91 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_cyan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_cyan" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json new file mode 100644 index 0000000000..959c3b871a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_gray" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json new file mode 100644 index 0000000000..ae496bdb93 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_green" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_green" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..9e660ad5de --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_blue" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..b2b51d665b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_gray" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json new file mode 100644 index 0000000000..b21321754b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_lime" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_lime" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json new file mode 100644 index 0000000000..38097fe636 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_magenta" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_magenta" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json new file mode 100644 index 0000000000..a5e2054cd0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_orange" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_orange" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json new file mode 100644 index 0000000000..868366c0a4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_pink" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_pink" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json new file mode 100644 index 0000000000..b9d4282404 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_purple" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_purple" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json new file mode 100644 index 0000000000..515062d384 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_red" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_red" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json new file mode 100644 index 0000000000..3fbaf1ba20 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_white" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_white" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json new file mode 100644 index 0000000000..e707bc9937 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_yellow" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_yellow" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json new file mode 100644 index 0000000000..e07c954cd3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_agender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_agender" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json new file mode 100644 index 0000000000..8413c66774 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aroace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aroace" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..37604e5939 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aromantic" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aromantic" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json new file mode 100644 index 0000000000..74df9afba7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_asexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_asexual" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..a3e18ad420 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_bisexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_bisexual" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..e131fc73f1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demiboy" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demiboy" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..a164b59ce6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demigirl" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demigirl" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json new file mode 100644 index 0000000000..59c4f8fdeb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_gay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_gay" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..5c3233fa98 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderfluid" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderfluid" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..fd6f1355ef --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderqueer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderqueer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json new file mode 100644 index 0000000000..091329fe3f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_intersex" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_intersex" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..3d4dec1d10 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_lesbian" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_lesbian" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..83c4964af9 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_nonbinary" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_nonbinary" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json new file mode 100644 index 0000000000..89512b05e1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_plural" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_plural" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json new file mode 100644 index 0000000000..70dced6396 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_transgender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_transgender" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json new file mode 100644 index 0000000000..fbcdbfebf4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:uuid_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:uuid_colorizer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json new file mode 100644 index 0000000000..44a4110650 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json new file mode 100644 index 0000000000..e00a4fdf00 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix/empty" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json new file mode 100644 index 0000000000..b6cd73817c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_button" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_button" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json new file mode 100644 index 0000000000..72dce77364 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_door" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_door" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json new file mode 100644 index 0000000000..f207372eeb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_pressure_plate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_pressure_plate" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json new file mode 100644 index 0000000000..be0fadb15b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_trapdoor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_trapdoor" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json new file mode 100644 index 0000000000..0b4aa3256c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus/empty" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json new file mode 100644 index 0000000000..b1cb841b3e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:abacus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:abacus" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json new file mode 100644 index 0000000000..221cf418c3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:artifact" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:artifact" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json new file mode 100644 index 0000000000..5489ea0467 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:cypher" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:cypher" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json new file mode 100644 index 0000000000..4e19de9e5e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json new file mode 100644 index 0000000000..f67d8502aa --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus_rotated" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus_rotated" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json new file mode 100644 index 0000000000..6a24d2b333 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:jeweler_hammer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:jeweler_hammer" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json new file mode 100644 index 0000000000..3411cb2187 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:lens" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json new file mode 100644 index 0000000000..ef5a492652 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -0,0 +1,43 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_chorus": { + "conditions": { + "items": [ + { + "items": "minecraft:chorus_fruit" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_focus": { + "conditions": { + "items": [ + { + "items": "hexcasting:focus" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:spellbook" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_focus", + "has_chorus" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:spellbook" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json new file mode 100644 index 0000000000..c1e018b4ec --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/acacia" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/acacia" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json new file mode 100644 index 0000000000..19094ad2fe --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/bamboo" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/bamboo" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json new file mode 100644 index 0000000000..ca6c180cfa --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/birch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/birch" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json new file mode 100644 index 0000000000..38107a9b52 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/cherry" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/cherry" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json new file mode 100644 index 0000000000..da68b592c5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/crimson" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/crimson" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json new file mode 100644 index 0000000000..da9937e87d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/dark_oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/dark_oak" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json new file mode 100644 index 0000000000..99d19ed3bf --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/edified" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/edified" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json new file mode 100644 index 0000000000..80fe7c43f6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/jungle" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/jungle" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json new file mode 100644 index 0000000000..0064814593 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mangrove" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mangrove" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json new file mode 100644 index 0000000000..adb60836c1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mindsplice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mindsplice" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json new file mode 100644 index 0000000000..d11084b78d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/oak" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json new file mode 100644 index 0000000000..1ce63b78e3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/quenched" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/quenched" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json new file mode 100644 index 0000000000..cbad54cf88 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/spruce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/spruce" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json new file mode 100644 index 0000000000..ffff5199c6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/warped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/warped" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json new file mode 100644 index 0000000000..f50c1673fa --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:thought_knot" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:thought_knot" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json new file mode 100644 index 0000000000..17c0d69b1f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:trinket" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:trinket" + ] + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/root.json b/Common/src/generated/resources/data/hexcasting/advancement/root.json new file mode 100644 index 0000000000..1b2763aed8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/root.json @@ -0,0 +1,34 @@ +{ + "criteria": { + "has_charged_amethyst": { + "conditions": { + "items": [ + { + "items": "#hexcasting:grants_root_advancement" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:root.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:budding_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:root" + } + }, + "requirements": [ + [ + "has_charged_amethyst" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json b/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json new file mode 100644 index 0000000000..00a5641e4d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json @@ -0,0 +1,26 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "did_the_thing": { + "trigger": "hexcasting:fail_to_cast_great_spell" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:blaze_powder" + }, + "title": { + "translate": "advancement.hexcasting:y_u_no_cast_angy" + } + }, + "requirements": [ + [ + "did_the_thing" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json b/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json new file mode 100644 index 0000000000..012582c4b2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/damage_type/overcast.json @@ -0,0 +1,5 @@ +{ + "exhaustion": 0.0, + "message_id": "hexcasting.overcast", + "scaling": "when_caused_by_living_non_player" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json new file mode 100644 index 0000000000..70af09ea61 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:amethyst_cluster", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:blocks/amethyst_cluster" + } + ], + "shardDelta": -0.5 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json new file mode 100644 index 0000000000..181fbfe7ad --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 1.0, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "hexcasting:random_cypher" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..2cde006e3e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..79ede35c14 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..f51d2dabf0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..78250990ed --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..b9e7041dbc --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..5cb215e05e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json new file mode 100644 index 0000000000..6dfe6d03d3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_corridor" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..c636a2f73a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..215f625f7d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..ad1b0666d8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f55d8f4cc0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json new file mode 100644 index 0000000000..3aaf4b8498 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_desert_house" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json new file mode 100644 index 0000000000..93d27d6661 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_plains_house" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json new file mode 100644 index 0000000000..bb224944b7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_savanna_house" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json new file mode 100644 index 0000000000..ec4f567a6e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_snowy_house" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json new file mode 100644 index 0000000000..d2132c79bf --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_taiga_house" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..be9d6b6d12 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json new file mode 100644 index 0000000000..9e7e8571ec --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "hexcasting:random_scroll" + } + ], + "countRange": -1 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..27d1e1ba46 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..d4d94d6652 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json new file mode 100644 index 0000000000..17372d9896 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_other" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json new file mode 100644 index 0000000000..ff8851c233 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..b91f49fb8a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json new file mode 100644 index 0000000000..f5371dd519 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/end_city_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..c1bf948ade --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..68725eddce --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..b06f4d95a6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json new file mode 100644 index 0000000000..3c7b528cda --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/shipwreck_map" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..141eebbe09 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f08c93cb45 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json new file mode 100644 index 0000000000..a59db105dd --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_cartographer" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..cc97ecc7c2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json new file mode 100644 index 0000000000..78a36f62ec --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_bookshelf" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_bookshelf" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json new file mode 100644 index 0000000000..02be275bc1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_ligature" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_ligature" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json new file mode 100644 index 0000000000..5c93f81681 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_record" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_record" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json new file mode 100644 index 0000000000..4c60a77364 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json new file mode 100644 index 0000000000..3d39f82987 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json new file mode 100644 index 0000000000..7c054a0aab --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_dust_block" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json new file mode 100644 index 0000000000..911c281497 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json new file mode 100644 index 0000000000..2eeb112461 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json new file mode 100644 index 0000000000..e2c38fe09e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_sconce" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_sconce" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json new file mode 100644 index 0000000000..13010296ca --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..2bb2887920 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f2ea006a03 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json new file mode 100644 index 0000000000..d2bfc7c956 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:aventurine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json new file mode 100644 index 0000000000..88f319d753 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:citrine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json new file mode 100644 index 0000000000..7510be752b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/boolean" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/boolean" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json new file mode 100644 index 0000000000..056282de33 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/empty" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json new file mode 100644 index 0000000000..b130eb19de --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/redstone" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json new file mode 100644 index 0000000000..a24172124e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_button" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_button" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json new file mode 100644 index 0000000000..942a65484f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "block": "hexcasting:edified_door", + "condition": "minecraft:block_state_property", + "properties": { + "half": "lower" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_door" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_door" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json new file mode 100644 index 0000000000..f45eea22be --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json new file mode 100644 index 0000000000..01cbf2a5e1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence_gate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence_gate" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json new file mode 100644 index 0000000000..396a3fcb45 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json new file mode 100644 index 0000000000..d6c0759bfa --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_amethyst" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_amethyst" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json new file mode 100644 index 0000000000..31892f2177 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_aventurine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_aventurine" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json new file mode 100644 index 0000000000..21ac1cd0fb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_citrine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_citrine" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json new file mode 100644 index 0000000000..f9c2c33343 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_purple" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_purple" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json new file mode 100644 index 0000000000..83cb1f1b59 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_panel" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_panel" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json new file mode 100644 index 0000000000..5f1b5f7280 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_planks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_planks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json new file mode 100644 index 0000000000..d733b30a49 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_pressure_plate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_pressure_plate" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json new file mode 100644 index 0000000000..0bdc00f6b3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json @@ -0,0 +1,34 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_slab" + } + ], + "functions": [ + { + "add": false, + "conditions": [ + { + "block": "hexcasting:edified_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ], + "count": 2.0, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_slab" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json new file mode 100644 index 0000000000..7cb6566434 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_stairs" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_stairs" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json new file mode 100644 index 0000000000..dbc6bd1426 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_tile" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_tile" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json new file mode 100644 index 0000000000..f76ea0437f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_trapdoor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_trapdoor" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json new file mode 100644 index 0000000000..2e1faee977 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_wood" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json new file mode 100644 index 0000000000..67fe1185ac --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/empty" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json new file mode 100644 index 0000000000..87f6f0ef09 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/look" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/look" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json new file mode 100644 index 0000000000..1635ee4207 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/redstone" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json new file mode 100644 index 0000000000..37f1e9df10 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/rightclick" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/rightclick" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json new file mode 100644 index 0000000000..09fe8b6fd3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -0,0 +1,69 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ], + "name": "hexcasting:quenched_allay" + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 2.0 + }, + "function": "minecraft:set_count" + }, + { + "add": true, + "conditions": [ + { + "chances": [ + 0.25, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "name": "hexcasting:quenched_allay_shard" + } + ] + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..eb1a87b224 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..879089b6d4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..0c81157382 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json new file mode 100644 index 0000000000..8c3d628108 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json new file mode 100644 index 0000000000..ccea471c66 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json new file mode 100644 index 0000000000..eeb8f5c955 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" + ], + "source": "block_entity" + } + ], + "name": "hexcasting:slate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6d9ea8d1a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..6f7cfb5825 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..96dd26f7fb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e91ebad3ce --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json new file mode 100644 index 0000000000..d136fe7460 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_block" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json new file mode 100644 index 0000000000..d42593f8d5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json new file mode 100644 index 0000000000..f77a608dec --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks_small" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json new file mode 100644 index 0000000000..060b60ebf9 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_pillar" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json new file mode 100644 index 0000000000..81cda1a13a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_tiles" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json new file mode 100644 index 0000000000..7dab40f3a1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_log" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..60b009f032 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_wood" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json new file mode 100644 index 0000000000..e87bc89af2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -0,0 +1,211 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + }, + { + "chances": [ + 0.25, + 0.35, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + }, + { + "chance": 0.125, + "condition": "minecraft:random_chance" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:inject/amethyst_cluster" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/abacus.json b/Common/src/generated/resources/data/hexcasting/recipe/abacus.json new file mode 100644 index 0000000000..76d393b033 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "minecraft:planks" + } + }, + "pattern": [ + "WAW", + "SAS", + "WAW" + ], + "result": { + "count": 1, + "id": "hexcasting:abacus" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..54de4e69be --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json new file mode 100644 index 0000000000..055ac48308 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "C": { + "item": "minecraft:book" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "result": { + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json new file mode 100644 index 0000000000..bbcc3f83e7 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "1": { + "item": "hexcasting:amethyst_dust" + }, + "2": { + "item": "minecraft:amethyst_shard" + }, + "3": { + "item": "hexcasting:charged_amethyst" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "123", + "LPL" + ], + "result": { + "count": 4, + "id": "hexcasting:akashic_ligature" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json new file mode 100644 index 0000000000..2295ff6e47 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..40fcca35bb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..ee790bd86e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json new file mode 100644 index 0000000000..1da337229f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "X": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "XX", + "XX" + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..db42cb3711 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust_block" + } + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json new file mode 100644 index 0000000000..80134fcf5f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json new file mode 100644 index 0000000000..1ece2856f0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "tag": "c:ingots/copper" + }, + "T": { + "item": "hexcasting:charged_amethyst" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_sconce" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json new file mode 100644 index 0000000000..45aa2f2b82 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:amethyst_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json new file mode 100644 index 0000000000..94e370b637 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_colorizer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json new file mode 100644 index 0000000000..33db9b82c9 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..d99d9ba91b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:ancient_scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/artifact.json b/Common/src/generated/resources/data/hexcasting/recipe/artifact.json new file mode 100644 index 0000000000..a03e30a2a8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "D": { + "tag": "minecraft:creeper_drop_music_discs" + }, + "F": { + "tag": "c:ingots/gold" + } + }, + "pattern": [ + " F ", + "FAF", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:artifact" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..0532b2e5ed --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 3 + }, + "result": { + "Name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..5e97ada05f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:shepherd" + }, + "result": { + "Name": "hexcasting:directrix/boolean", + "Properties": { + "energized": "false", + "facing": "north", + "state": "neither" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..afb314d043 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:mason" + }, + "result": { + "Name": "hexcasting:directrix/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "false" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json new file mode 100644 index 0000000000..7d77364f78 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:fletcher" + }, + "result": { + "Name": "hexcasting:impetus/look", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..02fbae2538 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:toolsmith" + }, + "result": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..f79dca1d11 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:cleric" + }, + "result": { + "Name": "hexcasting:impetus/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "true" + } + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json new file mode 100644 index 0000000000..076b4e0745 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 100000, + "entityIn": { + "type": "hexcasting:entity_type", + "entityType": "minecraft:allay" + }, + "result": { + "Name": "hexcasting:quenched_allay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/cypher.json b/Common/src/generated/resources/data/hexcasting/recipe/cypher.json new file mode 100644 index 0000000000..80e1837536 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/copper" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:cypher" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..4d9e9902e8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:charged_amethyst" + } + ], + "result": { + "count": 4, + "id": "hexcasting:charged_amethyst" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..5023760773 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:amethyst_dust" + } + ], + "result": { + "count": 31, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..e441d9bf5f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "minecraft:amethyst_shard" + } + ], + "result": { + "count": 7, + "id": "minecraft:amethyst_shard" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json new file mode 100644 index 0000000000..3f95041537 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:default_colorizer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json new file mode 100644 index 0000000000..986fa97d99 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "C": { + "item": "minecraft:comparator" + }, + "O": { + "item": "minecraft:observer" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "CSS", + "OAO", + "SSC" + ], + "result": { + "count": 1, + "id": "hexcasting:directrix/empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json new file mode 100644 index 0000000000..43dcd86862 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:black_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json new file mode 100644 index 0000000000..b9cd3b99c3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json new file mode 100644 index 0000000000..f02b87049c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:brown_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json new file mode 100644 index 0000000000..93380132c6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:cyan_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json new file mode 100644 index 0000000000..c803427d5a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json new file mode 100644 index 0000000000..e592b36cca --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:green_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..d8eb9b5986 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..e6efc2af9a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json new file mode 100644 index 0000000000..645db81176 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:lime_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json new file mode 100644 index 0000000000..9476c0a098 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:magenta_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json new file mode 100644 index 0000000000..f6f815b95f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:orange_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json new file mode 100644 index 0000000000..065db19c23 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:pink_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json new file mode 100644 index 0000000000..85dab6119e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:purple_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json new file mode 100644 index 0000000000..8acba0fc1a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:red_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json new file mode 100644 index 0000000000..d76ee9ba69 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:white_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json new file mode 100644 index 0000000000..35ffbdd8df --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:yellow_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json new file mode 100644 index 0000000000..28edc09f6d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_focus", + "category": "misc" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json new file mode 100644 index 0000000000..5bf703566d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_spellbook", + "category": "misc" +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json new file mode 100644 index 0000000000..10ad25b4aa --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "redstone", + "ingredients": [ + { + "tag": "hexcasting:edified_planks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:edified_button" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json new file mode 100644 index 0000000000..6ff2941615 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW", + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_door" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json new file mode 100644 index 0000000000..f1a7c7ec45 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WSW", + "WSW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_fence" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json new file mode 100644 index 0000000000..a38d45ca38 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "SWS", + "SWS" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_fence_gate" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json new file mode 100644 index 0000000000..0baf420f31 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "tag": "hexcasting:edified_planks" + }, + "D": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:edified_panel" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json new file mode 100644 index 0000000000..7ea641db71 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "hexcasting:edified_logs" + } + ], + "result": { + "count": 4, + "id": "hexcasting:edified_planks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json new file mode 100644 index 0000000000..fb80df82d1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json new file mode 100644 index 0000000000..efda8df52a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_slab" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json new file mode 100644 index 0000000000..ca2e03f9c3 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "W ", + "WW ", + "WWW" + ], + "result": { + "count": 4, + "id": "hexcasting:edified_stairs" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json new file mode 100644 index 0000000000..bfca8c3437 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW ", + "W W", + " WW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_tile" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json new file mode 100644 index 0000000000..89928fcc73 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW", + "WWW" + ], + "result": { + "count": 2, + "id": "hexcasting:edified_trapdoor" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json new file mode 100644 index 0000000000..4e95e0bdc6 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_wood" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/focus.json b/Common/src/generated/resources/data/hexcasting/recipe/focus.json new file mode 100644 index 0000000000..ff88244378 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/focus.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GLG", + "PAP", + "GLG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json new file mode 100644 index 0000000000..62aba7f62e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GPG", + "LAL", + "GPG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json new file mode 100644 index 0000000000..b5d3b9fd5c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:iron_bars" + }, + "P": { + "item": "minecraft:purpur_block" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "PSS", + "BAB", + "SSP" + ], + "result": { + "count": 1, + "id": "hexcasting:impetus/empty" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json new file mode 100644 index 0000000000..fef55bcb4b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "I": { + "tag": "c:ingots/iron" + }, + "N": { + "tag": "c:nuggets/iron" + }, + "S": [ + { + "item": "minecraft:stick" + }, + { + "tag": "forge:rods/wooden" + } + ] + }, + "pattern": [ + "IAN", + " S ", + " S " + ], + "result": { + "count": 1, + "id": "hexcasting:jeweler_hammer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/lens.json b/Common/src/generated/resources/data/hexcasting/recipe/lens.json new file mode 100644 index 0000000000..d7e33ac36b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/lens.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "item": "minecraft:glass" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:lens" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json new file mode 100644 index 0000000000..d5401c0952 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json new file mode 100644 index 0000000000..25c32f412c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat_seeds" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..ab923e9b61 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:arrow" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json new file mode 100644 index 0000000000..c41a3223de --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:bread" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..157dff5b64 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..c79d6fd805 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_iron" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..4a87fb83dd --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_copper" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json new file mode 100644 index 0000000000..3922bf5fa1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:stone_brick_wall" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..788be0d074 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:water_bucket" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..db56478852 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass_bottle" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json new file mode 100644 index 0000000000..0cf8605f6e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:azalea" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..60faeb98cb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:honeycomb" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..1592908ece --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:moss_block" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json new file mode 100644 index 0000000000..662aaf38fc --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:repeater" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json new file mode 100644 index 0000000000..cce2b91ea8 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:egg" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json new file mode 100644 index 0000000000..8f4ef39565 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..6c3bb75415 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..436404d386 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json new file mode 100644 index 0000000000..0b9cf2c86e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll.json new file mode 100644 index 0000000000..cf7a4fcfb1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "PPA", + "PPP", + "PPP" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json new file mode 100644 index 0000000000..85b2a98f34 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "PP ", + "PP " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_medium" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json new file mode 100644 index 0000000000..1feb96a530 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:paper" + }, + "D": { + "item": "minecraft:paper" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:scroll_paper" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json new file mode 100644 index 0000000000..5434f4c7f1 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json new file mode 100644 index 0000000000..c64a3e544a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "P " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate.json b/Common/src/generated/resources/data/hexcasting/recipe/slate.json new file mode 100644 index 0000000000..eb718972c2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "S": { + "item": "minecraft:deepslate" + } + }, + "pattern": [ + " A ", + "SSS" + ], + "result": { + "count": 6, + "id": "hexcasting:slate" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6464485cb --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + }, + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..d033fedb80 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + }, + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1b54fb5117 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_pillar" + }, + { + "item": "hexcasting:amethyst_pillar" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_pillar" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json new file mode 100644 index 0000000000..849bbf1979 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_tiles" + }, + { + "item": "hexcasting:amethyst_tiles" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json new file mode 100644 index 0000000000..975fea26a0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:deepslate" + }, + "D": { + "item": "minecraft:deepslate" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json new file mode 100644 index 0000000000..92bf412fdf --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "hexcasting:slate" + } + }, + "pattern": [ + "S", + "S" + ], + "result": { + "count": 1, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json new file mode 100644 index 0000000000..d9b600df2c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..382f303f25 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..33593cd656 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json new file mode 100644 index 0000000000..fcbae2e388 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json new file mode 100644 index 0000000000..797344b40d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/slate_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json new file mode 100644 index 0000000000..d9e9250926 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:writable_book" + }, + "F": { + "item": "minecraft:chorus_fruit" + }, + "N": { + "tag": "c:nuggets/gold" + } + }, + "pattern": [ + "NBA", + "NFA", + "NBA" + ], + "result": { + "count": 1, + "id": "hexcasting:spellbook" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json new file mode 100644 index 0000000000..a5e01a9c9a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:acacia_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/acacia" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json new file mode 100644 index 0000000000..8c648a860c --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:bamboo_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/bamboo" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json new file mode 100644 index 0000000000..2cee68c976 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:birch_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/birch" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json new file mode 100644 index 0000000000..fb19b26271 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:cherry_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/cherry" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json new file mode 100644 index 0000000000..6f8b4dd09e --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:crimson_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/crimson" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json new file mode 100644 index 0000000000..b4a9aea823 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:dark_oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/dark_oak" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json new file mode 100644 index 0000000000..29378f8085 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:edified_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/edified" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json new file mode 100644 index 0000000000..a3b382cf11 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:jungle_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/jungle" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json new file mode 100644 index 0000000000..2ad01c0d69 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:mangrove_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mangrove" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json new file mode 100644 index 0000000000..41c9e8abb0 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:brainswept_circle_components" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mindsplice" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json new file mode 100644 index 0000000000..75d6d9daab --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/oak" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json new file mode 100644 index 0000000000..91fd1fc452 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:quenched_allay_shard" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/quenched" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json new file mode 100644 index 0000000000..0ab7166a60 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:spruce_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/spruce" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json new file mode 100644 index 0000000000..8a71b96aaf --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:warped_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/warped" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..351fac3275 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..be2ad51853 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..9545010b63 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..51ae3111d5 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..3ebba913be --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..9695781699 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..e4c2cb2691 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..3684c61863 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..d37da58373 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..7e945de1da --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..2d97ad9e40 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json new file mode 100644 index 0000000000..0ccb5ae8e2 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:stripped_edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:stripped_edified_wood" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json new file mode 100644 index 0000000000..82a511fde4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "B": { + "item": "minecraft:bread" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + " SA", + " C ", + " B " + ], + "result": { + "count": 1, + "id": "hexcasting:sub_sandwich" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json new file mode 100644 index 0000000000..d89ad83310 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust" + }, + { + "item": "minecraft:string" + } + ], + "result": { + "count": 1, + "id": "hexcasting:thought_knot" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/trinket.json b/Common/src/generated/resources/data/hexcasting/recipe/trinket.json new file mode 100644 index 0000000000..f0c905012a --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/iron" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:trinket" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json new file mode 100644 index 0000000000..235a2aff68 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:uuid_colorizer" + } +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json new file mode 100644 index 0000000000..7fc52a816b --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:conjured_block", + "hexcasting:conjured_light" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json new file mode 100644 index 0000000000..0f2bcab34f --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/block/water_plants.json @@ -0,0 +1,8 @@ +{ + "values": [ + "minecraft:kelp", + "minecraft:kelp_plant", + "minecraft:seagrass", + "minecraft:tall_seagrass" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json new file mode 100644 index 0000000000..1f7070a707 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:amethyst_dust", + "minecraft:amethyst_shard", + "hexcasting:charged_amethyst", + "hexcasting:creative_unlocker" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json new file mode 100644 index 0000000000..52ac4c0c96 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/phial_base.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:glass_bottle" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json new file mode 100644 index 0000000000..674a370049 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/seal_materials.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:honeycomb" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json b/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/hexcasting/tags/item/staves.json b/Common/src/generated/resources/data/hexcasting/tags/item/staves.json new file mode 100644 index 0000000000..29f4595c62 --- /dev/null +++ b/Common/src/generated/resources/data/hexcasting/tags/item/staves.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:staff/edified", + "hexcasting:staff/oak", + "hexcasting:staff/spruce", + "hexcasting:staff/birch", + "hexcasting:staff/jungle", + "hexcasting:staff/acacia", + "hexcasting:staff/dark_oak", + "hexcasting:staff/crimson", + "hexcasting:staff/warped", + "hexcasting:staff/mangrove", + "hexcasting:staff/cherry", + "hexcasting:staff/bamboo", + "hexcasting:staff/quenched", + "hexcasting:staff/mindsplice" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json new file mode 100644 index 0000000000..7a23dc1ec1 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:conjured_light", + "hexcasting:conjured_block", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_sconce" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/doors.json b/Common/src/generated/resources/data/minecraft/tags/block/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/fence_gates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/fences.json b/Common/src/generated/resources/data/minecraft/tags/block/fences.json new file mode 100644 index 0000000000..269de59e0a --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/fences.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/leaves.json b/Common/src/generated/resources/data/minecraft/tags/block/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/logs.json b/Common/src/generated/resources/data/minecraft/tags/block/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json new file mode 100644 index 0000000000..0d6037e186 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -0,0 +1,25 @@ +{ + "values": [ + "hexcasting:akashic_record", + "hexcasting:akashic_bookshelf", + "hexcasting:akashic_ligature", + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood", + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile", + "hexcasting:edified_door", + "hexcasting:edified_trapdoor", + "hexcasting:edified_slab", + "hexcasting:edified_button", + "hexcasting:edified_stairs", + "hexcasting:edified_fence", + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000000..a8b1c2eb67 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,30 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_tiles", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_pillar", + "hexcasting:slate", + "hexcasting:directrix/empty", + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean", + "hexcasting:impetus/empty", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/look", + "hexcasting:impetus/redstone", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_pillar", + "hexcasting:slate_amethyst_tiles", + "hexcasting:slate_amethyst_bricks", + "hexcasting:slate_amethyst_bricks_small", + "hexcasting:slate_amethyst_pillar", + "hexcasting:amethyst_sconce", + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_tiles", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000000..02d08df2b3 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust_block" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/planks.json b/Common/src/generated/resources/data/minecraft/tags/block/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json new file mode 100644 index 0000000000..117722b2be --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_fences.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:edified_fence", + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/doors.json b/Common/src/generated/resources/data/minecraft/tags/item/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/leaves.json b/Common/src/generated/resources/data/minecraft/tags/item/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/logs.json b/Common/src/generated/resources/data/minecraft/tags/item/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/planks.json b/Common/src/generated/resources/data/minecraft/tags/item/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Common/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json b/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json new file mode 100644 index 0000000000..e21250326e --- /dev/null +++ b/Common/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json @@ -0,0 +1,39 @@ +{ + "entries": [ + "hexcasting:scroll/minecraft/chests/simple_dungeon", + "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", + "hexcasting:scroll/minecraft/chests/bastion_other", + "hexcasting:scroll/minecraft/chests/nether_bridge", + "hexcasting:scroll/minecraft/chests/jungle_temple", + "hexcasting:scroll/minecraft/chests/desert_pyramid", + "hexcasting:scroll/minecraft/chests/village/village_cartographer", + "hexcasting:scroll/minecraft/chests/shipwreck_map", + "hexcasting:scroll/minecraft/chests/bastion_treasure", + "hexcasting:scroll/minecraft/chests/end_city_treasure", + "hexcasting:scroll/minecraft/chests/ancient_city", + "hexcasting:scroll/minecraft/chests/pillager_outpost", + "hexcasting:scroll/minecraft/chests/woodland_mansion", + "hexcasting:scroll/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/simple_dungeon", + "hexcasting:lore/minecraft/chests/abandoned_mineshaft", + "hexcasting:lore/minecraft/chests/pillager_outpost", + "hexcasting:lore/minecraft/chests/woodland_mansion", + "hexcasting:lore/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/village/village_desert_house", + "hexcasting:lore/minecraft/chests/village/village_plains_house", + "hexcasting:lore/minecraft/chests/village/village_savanna_house", + "hexcasting:lore/minecraft/chests/village/village_snowy_house", + "hexcasting:lore/minecraft/chests/village/village_taiga_house", + "hexcasting:cypher/minecraft/chests/simple_dungeon", + "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", + "hexcasting:cypher/minecraft/chests/stronghold_corridor", + "hexcasting:cypher/minecraft/chests/jungle_temple", + "hexcasting:cypher/minecraft/chests/desert_pyramid", + "hexcasting:cypher/minecraft/chests/ancient_city", + "hexcasting:cypher/minecraft/chests/nether_bridge", + "hexcasting:scroll/hexcasting/random_scroll", + "hexcasting:cypher/hexcasting/random_cypher", + "hexcasting:amethyst_cluster" + ], + "replace": false +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json b/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json new file mode 100644 index 0000000000..d936f71efc --- /dev/null +++ b/Fabric/src/generated/resources/data/c/tags/item/amethyst_dusts.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/c/tags/item/gems.json b/Fabric/src/generated/resources/data/c/tags/item/gems.json new file mode 100644 index 0000000000..6c55bdef92 --- /dev/null +++ b/Fabric/src/generated/resources/data/c/tags/item/gems.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/create/tags/block/brittle.json b/Fabric/src/generated/resources/data/create/tags/block/brittle.json new file mode 100644 index 0000000000..fb66be6093 --- /dev/null +++ b/Fabric/src/generated/resources/data/create/tags/block/brittle.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#hexcasting:slate", + "required": false + } + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json new file mode 100644 index 0000000000..d36fd4dc3b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_record" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_record" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..18f9ea380f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:budding_amethyst" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:budding_amethyst" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..31d9085f82 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_storedplayer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_storedplayer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json new file mode 100644 index 0000000000..a2abfd4999 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..4cfbe02fd1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..baefa8193d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json new file mode 100644 index 0000000000..96746726ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_packing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_packing" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..ff10efd290 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_unpacking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_unpacking" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json new file mode 100644 index 0000000000..a667163117 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json new file mode 100644 index 0000000000..8ae76d54a6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..ab1194da4a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json new file mode 100644 index 0000000000..31556a4ca8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json new file mode 100644 index 0000000000..1d09e6fdf8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence_gate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence_gate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json new file mode 100644 index 0000000000..ab66016e10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_panel" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json new file mode 100644 index 0000000000..f031431d00 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_logs" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_planks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json new file mode 100644 index 0000000000..317bd1fd11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_slab" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json new file mode 100644 index 0000000000..069989ca28 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_stairs" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json new file mode 100644 index 0000000000..5179827061 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_tile" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_tile" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json new file mode 100644 index 0000000000..f0aaf4b1fd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_wood" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..c37b71d284 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..ccd1d07d9c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..17e80c692e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..3c6b16fa0d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json new file mode 100644 index 0000000000..d676daa7f7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..ff2f402508 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..767c693c0a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..bf457b3afb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..ebaa53598d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json new file mode 100644 index 0000000000..770d62ab2b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json new file mode 100644 index 0000000000..b2f96c2797 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block_from_slates" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block_from_slates" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json new file mode 100644 index 0000000000..ba654692a5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..0380e1fa54 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_from_slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_from_slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..36c4038b5f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_small_from_slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_small_from_slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json new file mode 100644 index 0000000000..2b5db656e7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json new file mode 100644 index 0000000000..8013adb566 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..41dacf55e2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..b3874144f8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..d03fa6e83f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..960f240cc5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..7ffcabeb6c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0d0cdc21a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..d5b967aaa1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..29d6c05539 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..a3c3d9d49d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..a28270ce91 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..50b1e3d144 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..4d048fc250 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:stripped_edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stripped_edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stripped_edified_wood" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..6ae4bdbbb6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper_lantern" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ageing_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ageing_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json new file mode 100644 index 0000000000..91debb7ca5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_sconce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_sconce" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f36c1abfc2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:ancient_scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json new file mode 100644 index 0000000000..1bff0c5ff6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json new file mode 100644 index 0000000000..2dc4651527 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_medium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_medium" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json new file mode 100644 index 0000000000..63884d313e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json new file mode 100644 index 0000000000..2e68c56849 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_small" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json new file mode 100644 index 0000000000..551899a3a3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json new file mode 100644 index 0000000000..bb64c267e5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:sub_sandwich" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:sub_sandwich" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json new file mode 100644 index 0000000000..87bb27b0ac --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_colorizer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..b032476ae7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/charged" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/charged" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..299d8a4550 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/dust" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/dust" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..d9f9dfbb25 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/shard" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json new file mode 100644 index 0000000000..e04ea0f7b0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:default_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:default_colorizer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json new file mode 100644 index 0000000000..486da412cd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_black" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_black" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json new file mode 100644 index 0000000000..c23b00add5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_blue" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json new file mode 100644 index 0000000000..daf49d8674 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_brown" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_brown" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json new file mode 100644 index 0000000000..bc159a4f91 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_cyan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_cyan" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json new file mode 100644 index 0000000000..959c3b871a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_gray" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json new file mode 100644 index 0000000000..ae496bdb93 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_green" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_green" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..9e660ad5de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_blue" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..b2b51d665b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_gray" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json new file mode 100644 index 0000000000..b21321754b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_lime" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_lime" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json new file mode 100644 index 0000000000..38097fe636 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_magenta" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_magenta" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json new file mode 100644 index 0000000000..a5e2054cd0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_orange" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_orange" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json new file mode 100644 index 0000000000..868366c0a4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_pink" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_pink" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json new file mode 100644 index 0000000000..b9d4282404 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_purple" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_purple" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json new file mode 100644 index 0000000000..515062d384 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_red" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_red" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json new file mode 100644 index 0000000000..3fbaf1ba20 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_white" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_white" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json new file mode 100644 index 0000000000..e707bc9937 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_yellow" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_yellow" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json new file mode 100644 index 0000000000..e07c954cd3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_agender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_agender" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json new file mode 100644 index 0000000000..8413c66774 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aroace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aroace" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..37604e5939 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aromantic" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aromantic" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json new file mode 100644 index 0000000000..74df9afba7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_asexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_asexual" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..a3e18ad420 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_bisexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_bisexual" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..e131fc73f1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demiboy" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demiboy" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..a164b59ce6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demigirl" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demigirl" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json new file mode 100644 index 0000000000..59c4f8fdeb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_gay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_gay" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..5c3233fa98 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderfluid" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderfluid" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..fd6f1355ef --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderqueer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderqueer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json new file mode 100644 index 0000000000..091329fe3f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_intersex" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_intersex" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..3d4dec1d10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_lesbian" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_lesbian" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..83c4964af9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_nonbinary" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_nonbinary" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json new file mode 100644 index 0000000000..89512b05e1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_plural" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_plural" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json new file mode 100644 index 0000000000..70dced6396 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_transgender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_transgender" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json new file mode 100644 index 0000000000..fbcdbfebf4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:uuid_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:uuid_colorizer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json new file mode 100644 index 0000000000..44a4110650 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json new file mode 100644 index 0000000000..e00a4fdf00 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix/empty" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json new file mode 100644 index 0000000000..b6cd73817c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_button" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_button" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json new file mode 100644 index 0000000000..72dce77364 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_door" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_door" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json new file mode 100644 index 0000000000..f207372eeb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_pressure_plate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_pressure_plate" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json new file mode 100644 index 0000000000..be0fadb15b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_trapdoor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_trapdoor" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json new file mode 100644 index 0000000000..0b4aa3256c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus/empty" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json new file mode 100644 index 0000000000..b1cb841b3e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:abacus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:abacus" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json new file mode 100644 index 0000000000..221cf418c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:artifact" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:artifact" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json new file mode 100644 index 0000000000..5489ea0467 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:cypher" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:cypher" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json new file mode 100644 index 0000000000..4e19de9e5e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json new file mode 100644 index 0000000000..f67d8502aa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus_rotated" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus_rotated" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json new file mode 100644 index 0000000000..6a24d2b333 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:jeweler_hammer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:jeweler_hammer" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json new file mode 100644 index 0000000000..3411cb2187 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:lens" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json new file mode 100644 index 0000000000..ef5a492652 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -0,0 +1,43 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_chorus": { + "conditions": { + "items": [ + { + "items": "minecraft:chorus_fruit" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_focus": { + "conditions": { + "items": [ + { + "items": "hexcasting:focus" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:spellbook" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_focus", + "has_chorus" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:spellbook" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json new file mode 100644 index 0000000000..c1e018b4ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/acacia" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/acacia" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json new file mode 100644 index 0000000000..19094ad2fe --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/bamboo" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/bamboo" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json new file mode 100644 index 0000000000..ca6c180cfa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/birch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/birch" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json new file mode 100644 index 0000000000..38107a9b52 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/cherry" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/cherry" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json new file mode 100644 index 0000000000..da68b592c5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/crimson" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/crimson" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json new file mode 100644 index 0000000000..da9937e87d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/dark_oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/dark_oak" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json new file mode 100644 index 0000000000..99d19ed3bf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/edified" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/edified" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json new file mode 100644 index 0000000000..80fe7c43f6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/jungle" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/jungle" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json new file mode 100644 index 0000000000..0064814593 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mangrove" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mangrove" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json new file mode 100644 index 0000000000..adb60836c1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mindsplice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mindsplice" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json new file mode 100644 index 0000000000..d11084b78d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/oak" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json new file mode 100644 index 0000000000..1ce63b78e3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/quenched" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/quenched" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json new file mode 100644 index 0000000000..cbad54cf88 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/spruce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/spruce" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json new file mode 100644 index 0000000000..ffff5199c6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/warped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/warped" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json new file mode 100644 index 0000000000..f50c1673fa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:thought_knot" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:thought_knot" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json new file mode 100644 index 0000000000..17c0d69b1f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:trinket" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:trinket" + ] + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json new file mode 100644 index 0000000000..78a36f62ec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_bookshelf" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_bookshelf" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json new file mode 100644 index 0000000000..02be275bc1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_ligature" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_ligature" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json new file mode 100644 index 0000000000..5c93f81681 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_record" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_record" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json new file mode 100644 index 0000000000..4c60a77364 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json new file mode 100644 index 0000000000..3d39f82987 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json new file mode 100644 index 0000000000..7c054a0aab --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_dust_block" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json new file mode 100644 index 0000000000..1d66e9bbad --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json new file mode 100644 index 0000000000..2eeb112461 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json new file mode 100644 index 0000000000..e2c38fe09e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_sconce" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_sconce" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json new file mode 100644 index 0000000000..13010296ca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..2bb2887920 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f2ea006a03 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json new file mode 100644 index 0000000000..19a6706346 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:aventurine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json new file mode 100644 index 0000000000..8318d3456c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -0,0 +1,54 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "minecraft:shears" + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#c:shears" + } + } + ] + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:citrine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json new file mode 100644 index 0000000000..7510be752b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/boolean" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/boolean" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json new file mode 100644 index 0000000000..056282de33 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/empty" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json new file mode 100644 index 0000000000..b130eb19de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/redstone" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json new file mode 100644 index 0000000000..a24172124e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_button" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_button" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json new file mode 100644 index 0000000000..942a65484f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "block": "hexcasting:edified_door", + "condition": "minecraft:block_state_property", + "properties": { + "half": "lower" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_door" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_door" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json new file mode 100644 index 0000000000..f45eea22be --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json new file mode 100644 index 0000000000..01cbf2a5e1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence_gate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence_gate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json new file mode 100644 index 0000000000..396a3fcb45 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json new file mode 100644 index 0000000000..d6c0759bfa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_amethyst" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_amethyst" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json new file mode 100644 index 0000000000..31892f2177 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_aventurine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_aventurine" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json new file mode 100644 index 0000000000..21ac1cd0fb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_citrine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_citrine" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json new file mode 100644 index 0000000000..f9c2c33343 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_purple" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_purple" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json new file mode 100644 index 0000000000..83cb1f1b59 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_panel" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_panel" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json new file mode 100644 index 0000000000..5f1b5f7280 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_planks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_planks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json new file mode 100644 index 0000000000..d733b30a49 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_pressure_plate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_pressure_plate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json new file mode 100644 index 0000000000..0bdc00f6b3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json @@ -0,0 +1,34 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_slab" + } + ], + "functions": [ + { + "add": false, + "conditions": [ + { + "block": "hexcasting:edified_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ], + "count": 2.0, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_slab" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json new file mode 100644 index 0000000000..7cb6566434 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_stairs" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_stairs" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json new file mode 100644 index 0000000000..dbc6bd1426 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_tile" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_tile" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json new file mode 100644 index 0000000000..f76ea0437f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_trapdoor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_trapdoor" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json new file mode 100644 index 0000000000..2e1faee977 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_wood" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json new file mode 100644 index 0000000000..67fe1185ac --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/empty" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json new file mode 100644 index 0000000000..87f6f0ef09 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/look" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/look" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json new file mode 100644 index 0000000000..1635ee4207 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/redstone" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json new file mode 100644 index 0000000000..37f1e9df10 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/rightclick" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/rightclick" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json new file mode 100644 index 0000000000..09fe8b6fd3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -0,0 +1,69 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ], + "name": "hexcasting:quenched_allay" + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 2.0 + }, + "function": "minecraft:set_count" + }, + { + "add": true, + "conditions": [ + { + "chances": [ + 0.25, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "name": "hexcasting:quenched_allay_shard" + } + ] + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..eb1a87b224 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..879089b6d4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..0c81157382 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json new file mode 100644 index 0000000000..8c3d628108 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json new file mode 100644 index 0000000000..ccea471c66 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json new file mode 100644 index 0000000000..eeb8f5c955 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" + ], + "source": "block_entity" + } + ], + "name": "hexcasting:slate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6d9ea8d1a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..6f7cfb5825 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..96dd26f7fb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e91ebad3ce --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json new file mode 100644 index 0000000000..d136fe7460 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_block" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json new file mode 100644 index 0000000000..d42593f8d5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json new file mode 100644 index 0000000000..f77a608dec --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks_small" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json new file mode 100644 index 0000000000..060b60ebf9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_pillar" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json new file mode 100644 index 0000000000..81cda1a13a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_tiles" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json new file mode 100644 index 0000000000..7dab40f3a1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_log" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..60b009f032 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_wood" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json new file mode 100644 index 0000000000..e87bc89af2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -0,0 +1,211 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + }, + { + "chances": [ + 0.25, + 0.35, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + }, + { + "chance": 0.125, + "condition": "minecraft:random_chance" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:inject/amethyst_cluster" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json new file mode 100644 index 0000000000..76d393b033 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "minecraft:planks" + } + }, + "pattern": [ + "WAW", + "SAS", + "WAW" + ], + "result": { + "count": 1, + "id": "hexcasting:abacus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..fca2df35ca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -0,0 +1,45 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + [ + { + "item": "minecraft:brown_dye" + }, + { + "tag": "c:brown_dye" + }, + { + "tag": "c:brown_dyes" + } + ], + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json new file mode 100644 index 0000000000..055ac48308 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "C": { + "item": "minecraft:book" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "result": { + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json new file mode 100644 index 0000000000..bbcc3f83e7 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "1": { + "item": "hexcasting:amethyst_dust" + }, + "2": { + "item": "minecraft:amethyst_shard" + }, + "3": { + "item": "hexcasting:charged_amethyst" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "123", + "LPL" + ], + "result": { + "count": 4, + "id": "hexcasting:akashic_ligature" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json new file mode 100644 index 0000000000..2295ff6e47 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..40fcca35bb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..ee790bd86e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json new file mode 100644 index 0000000000..1da337229f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "X": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "XX", + "XX" + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..db42cb3711 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust_block" + } + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json new file mode 100644 index 0000000000..80134fcf5f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json new file mode 100644 index 0000000000..6c20a9e580 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": [ + { + "item": "minecraft:copper_ingot" + }, + { + "tag": "c:copper_ingots" + } + ], + "T": { + "item": "hexcasting:charged_amethyst" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_sconce" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json new file mode 100644 index 0000000000..45aa2f2b82 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:amethyst_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json new file mode 100644 index 0000000000..94e370b637 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_colorizer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json new file mode 100644 index 0000000000..cef3280ce8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -0,0 +1,45 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + [ + { + "item": "minecraft:brown_dye" + }, + { + "tag": "c:brown_dye" + }, + { + "tag": "c:brown_dyes" + } + ], + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..d99d9ba91b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:ancient_scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json b/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json new file mode 100644 index 0000000000..9db7d8ad92 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "D": { + "tag": "minecraft:creeper_drop_music_discs" + }, + "F": [ + { + "item": "minecraft:gold_ingot" + }, + { + "tag": "c:gold_ingots" + } + ] + }, + "pattern": [ + " F ", + "FAF", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:artifact" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..0532b2e5ed --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 3 + }, + "result": { + "Name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..5e97ada05f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:shepherd" + }, + "result": { + "Name": "hexcasting:directrix/boolean", + "Properties": { + "energized": "false", + "facing": "north", + "state": "neither" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..afb314d043 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:mason" + }, + "result": { + "Name": "hexcasting:directrix/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "false" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json new file mode 100644 index 0000000000..7d77364f78 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:fletcher" + }, + "result": { + "Name": "hexcasting:impetus/look", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..02fbae2538 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:toolsmith" + }, + "result": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..f79dca1d11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:cleric" + }, + "result": { + "Name": "hexcasting:impetus/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "true" + } + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json new file mode 100644 index 0000000000..076b4e0745 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 100000, + "entityIn": { + "type": "hexcasting:entity_type", + "entityType": "minecraft:allay" + }, + "result": { + "Name": "hexcasting:quenched_allay" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json b/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json new file mode 100644 index 0000000000..f45f438c5b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": [ + { + "item": "minecraft:copper_ingot" + }, + { + "tag": "c:copper_ingots" + } + ], + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:cypher" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..4d9e9902e8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:charged_amethyst" + } + ], + "result": { + "count": 4, + "id": "hexcasting:charged_amethyst" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..5023760773 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:amethyst_dust" + } + ], + "result": { + "count": 31, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..e441d9bf5f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "minecraft:amethyst_shard" + } + ], + "result": { + "count": 7, + "id": "minecraft:amethyst_shard" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json new file mode 100644 index 0000000000..3f95041537 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:default_colorizer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json new file mode 100644 index 0000000000..986fa97d99 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "C": { + "item": "minecraft:comparator" + }, + "O": { + "item": "minecraft:observer" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "CSS", + "OAO", + "SSC" + ], + "result": { + "count": 1, + "id": "hexcasting:directrix/empty" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json new file mode 100644 index 0000000000..43dcd86862 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:black_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json new file mode 100644 index 0000000000..b9cd3b99c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json new file mode 100644 index 0000000000..f02b87049c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:brown_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json new file mode 100644 index 0000000000..93380132c6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:cyan_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json new file mode 100644 index 0000000000..c803427d5a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json new file mode 100644 index 0000000000..e592b36cca --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:green_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..d8eb9b5986 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..e6efc2af9a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json new file mode 100644 index 0000000000..645db81176 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:lime_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json new file mode 100644 index 0000000000..9476c0a098 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:magenta_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json new file mode 100644 index 0000000000..f6f815b95f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:orange_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json new file mode 100644 index 0000000000..065db19c23 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:pink_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json new file mode 100644 index 0000000000..85dab6119e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:purple_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json new file mode 100644 index 0000000000..8acba0fc1a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:red_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json new file mode 100644 index 0000000000..d76ee9ba69 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:white_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json new file mode 100644 index 0000000000..35ffbdd8df --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:yellow_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json new file mode 100644 index 0000000000..28edc09f6d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_focus", + "category": "misc" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json new file mode 100644 index 0000000000..5bf703566d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_spellbook", + "category": "misc" +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json new file mode 100644 index 0000000000..10ad25b4aa --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "redstone", + "ingredients": [ + { + "tag": "hexcasting:edified_planks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:edified_button" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json new file mode 100644 index 0000000000..6ff2941615 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW", + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_door" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json new file mode 100644 index 0000000000..f1a7c7ec45 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WSW", + "WSW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_fence" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json new file mode 100644 index 0000000000..a38d45ca38 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "SWS", + "SWS" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_fence_gate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json new file mode 100644 index 0000000000..0baf420f31 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "tag": "hexcasting:edified_planks" + }, + "D": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:edified_panel" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json new file mode 100644 index 0000000000..7ea641db71 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "hexcasting:edified_logs" + } + ], + "result": { + "count": 4, + "id": "hexcasting:edified_planks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json new file mode 100644 index 0000000000..fb80df82d1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json new file mode 100644 index 0000000000..efda8df52a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_slab" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json new file mode 100644 index 0000000000..ca2e03f9c3 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "W ", + "WW ", + "WWW" + ], + "result": { + "count": 4, + "id": "hexcasting:edified_stairs" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json new file mode 100644 index 0000000000..bfca8c3437 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW ", + "W W", + " WW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_tile" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json new file mode 100644 index 0000000000..89928fcc73 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW", + "WWW" + ], + "result": { + "count": 2, + "id": "hexcasting:edified_trapdoor" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json new file mode 100644 index 0000000000..4e95e0bdc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_wood" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json new file mode 100644 index 0000000000..011cde4d82 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/focus.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": [ + { + "item": "minecraft:glowstone_dust" + }, + { + "tag": "c:glowstone_dusts" + } + ], + "L": { + "item": "minecraft:leather" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GLG", + "PAP", + "GLG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json new file mode 100644 index 0000000000..b91b4363b9 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": [ + { + "item": "minecraft:glowstone_dust" + }, + { + "tag": "c:glowstone_dusts" + } + ], + "L": { + "item": "minecraft:leather" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GPG", + "LAL", + "GPG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json new file mode 100644 index 0000000000..b5d3b9fd5c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:iron_bars" + }, + "P": { + "item": "minecraft:purpur_block" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "PSS", + "BAB", + "SSP" + ], + "result": { + "count": 1, + "id": "hexcasting:impetus/empty" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json new file mode 100644 index 0000000000..e1ec585bb6 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -0,0 +1,42 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "I": [ + { + "item": "minecraft:iron_ingot" + }, + { + "tag": "c:iron_ingots" + } + ], + "N": [ + { + "item": "minecraft:iron_nugget" + }, + { + "tag": "c:iron_nuggets" + } + ], + "S": [ + { + "item": "minecraft:stick" + }, + { + "tag": "c:wood_sticks" + } + ] + }, + "pattern": [ + "IAN", + " S ", + " S " + ], + "result": { + "count": 1, + "id": "hexcasting:jeweler_hammer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json b/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json new file mode 100644 index 0000000000..d7e33ac36b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/lens.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "item": "minecraft:glass" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:lens" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json new file mode 100644 index 0000000000..d5401c0952 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json new file mode 100644 index 0000000000..25c32f412c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat_seeds" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..ab923e9b61 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:arrow" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json new file mode 100644 index 0000000000..c41a3223de --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:bread" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..157dff5b64 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..c79d6fd805 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_iron" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..4a87fb83dd --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_copper" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json new file mode 100644 index 0000000000..3922bf5fa1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:stone_brick_wall" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..788be0d074 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:water_bucket" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..db56478852 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass_bottle" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json new file mode 100644 index 0000000000..0cf8605f6e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:azalea" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..60faeb98cb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:honeycomb" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..1592908ece --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:moss_block" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json new file mode 100644 index 0000000000..662aaf38fc --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:repeater" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json new file mode 100644 index 0000000000..cce2b91ea8 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:egg" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json new file mode 100644 index 0000000000..8f4ef39565 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..6c3bb75415 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..436404d386 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json new file mode 100644 index 0000000000..0b9cf2c86e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json new file mode 100644 index 0000000000..cf7a4fcfb1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "PPA", + "PPP", + "PPP" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json new file mode 100644 index 0000000000..85b2a98f34 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "PP ", + "PP " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_medium" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json new file mode 100644 index 0000000000..1feb96a530 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:paper" + }, + "D": { + "item": "minecraft:paper" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:scroll_paper" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json new file mode 100644 index 0000000000..5434f4c7f1 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json new file mode 100644 index 0000000000..c64a3e544a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "P " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json new file mode 100644 index 0000000000..eb718972c2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "S": { + "item": "minecraft:deepslate" + } + }, + "pattern": [ + " A ", + "SSS" + ], + "result": { + "count": 6, + "id": "hexcasting:slate" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6464485cb --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + }, + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..d033fedb80 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + }, + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1b54fb5117 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_pillar" + }, + { + "item": "hexcasting:amethyst_pillar" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_pillar" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json new file mode 100644 index 0000000000..849bbf1979 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_tiles" + }, + { + "item": "hexcasting:amethyst_tiles" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json new file mode 100644 index 0000000000..975fea26a0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:deepslate" + }, + "D": { + "item": "minecraft:deepslate" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json new file mode 100644 index 0000000000..92bf412fdf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "hexcasting:slate" + } + }, + "pattern": [ + "S", + "S" + ], + "result": { + "count": 1, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks.json new file mode 100644 index 0000000000..d9b600df2c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..382f303f25 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..33593cd656 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_pillar.json new file mode 100644 index 0000000000..fcbae2e388 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_tiles.json new file mode 100644 index 0000000000..797344b40d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/slate_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json new file mode 100644 index 0000000000..0d8bbb5971 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:writable_book" + }, + "F": { + "item": "minecraft:chorus_fruit" + }, + "N": [ + { + "item": "minecraft:gold_nugget" + }, + { + "tag": "c:gold_nuggets" + } + ] + }, + "pattern": [ + "NBA", + "NFA", + "NBA" + ], + "result": { + "count": 1, + "id": "hexcasting:spellbook" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json new file mode 100644 index 0000000000..a5e01a9c9a --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:acacia_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/acacia" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json new file mode 100644 index 0000000000..8c648a860c --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:bamboo_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/bamboo" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json new file mode 100644 index 0000000000..2cee68c976 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:birch_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/birch" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json new file mode 100644 index 0000000000..fb19b26271 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:cherry_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/cherry" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json new file mode 100644 index 0000000000..6f8b4dd09e --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:crimson_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/crimson" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json new file mode 100644 index 0000000000..b4a9aea823 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:dark_oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/dark_oak" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json new file mode 100644 index 0000000000..29378f8085 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:edified_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/edified" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json new file mode 100644 index 0000000000..a3b382cf11 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:jungle_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/jungle" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json new file mode 100644 index 0000000000..2ad01c0d69 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:mangrove_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mangrove" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json new file mode 100644 index 0000000000..41c9e8abb0 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:brainswept_circle_components" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mindsplice" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json new file mode 100644 index 0000000000..75d6d9daab --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/oak" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json new file mode 100644 index 0000000000..91fd1fc452 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:quenched_allay_shard" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/quenched" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json new file mode 100644 index 0000000000..0ab7166a60 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:spruce_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/spruce" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json new file mode 100644 index 0000000000..8a71b96aaf --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:warped_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/warped" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..351fac3275 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..be2ad51853 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..9545010b63 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..51ae3111d5 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..3ebba913be --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..9695781699 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..e4c2cb2691 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..3684c61863 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..d37da58373 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..7e945de1da --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..2d97ad9e40 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json new file mode 100644 index 0000000000..0ccb5ae8e2 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:stripped_edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:stripped_edified_wood" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json new file mode 100644 index 0000000000..82a511fde4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "B": { + "item": "minecraft:bread" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + " SA", + " C ", + " B " + ], + "result": { + "count": 1, + "id": "hexcasting:sub_sandwich" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json new file mode 100644 index 0000000000..d89ad83310 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust" + }, + { + "item": "minecraft:string" + } + ], + "result": { + "count": 1, + "id": "hexcasting:thought_knot" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json b/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json new file mode 100644 index 0000000000..f2e371553d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": [ + { + "item": "minecraft:iron_ingot" + }, + { + "tag": "c:iron_ingots" + } + ], + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:trinket" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json new file mode 100644 index 0000000000..235a2aff68 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:uuid_colorizer" + } +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json new file mode 100644 index 0000000000..7fc52a816b --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:conjured_block", + "hexcasting:conjured_light" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json new file mode 100644 index 0000000000..0f2bcab34f --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/block/water_plants.json @@ -0,0 +1,8 @@ +{ + "values": [ + "minecraft:kelp", + "minecraft:kelp_plant", + "minecraft:seagrass", + "minecraft:tall_seagrass" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json new file mode 100644 index 0000000000..1f7070a707 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:amethyst_dust", + "minecraft:amethyst_shard", + "hexcasting:charged_amethyst", + "hexcasting:creative_unlocker" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json new file mode 100644 index 0000000000..52ac4c0c96 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/phial_base.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:glass_bottle" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json new file mode 100644 index 0000000000..674a370049 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/seal_materials.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:honeycomb" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json b/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json new file mode 100644 index 0000000000..29f4595c62 --- /dev/null +++ b/Fabric/src/generated/resources/data/hexcasting/tags/item/staves.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:staff/edified", + "hexcasting:staff/oak", + "hexcasting:staff/spruce", + "hexcasting:staff/birch", + "hexcasting:staff/jungle", + "hexcasting:staff/acacia", + "hexcasting:staff/dark_oak", + "hexcasting:staff/crimson", + "hexcasting:staff/warped", + "hexcasting:staff/mangrove", + "hexcasting:staff/cherry", + "hexcasting:staff/bamboo", + "hexcasting:staff/quenched", + "hexcasting:staff/mindsplice" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json new file mode 100644 index 0000000000..7a23dc1ec1 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:conjured_light", + "hexcasting:conjured_block", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_sconce" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/fence_gates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json new file mode 100644 index 0000000000..269de59e0a --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/fences.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json new file mode 100644 index 0000000000..0d6037e186 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -0,0 +1,25 @@ +{ + "values": [ + "hexcasting:akashic_record", + "hexcasting:akashic_bookshelf", + "hexcasting:akashic_ligature", + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood", + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile", + "hexcasting:edified_door", + "hexcasting:edified_trapdoor", + "hexcasting:edified_slab", + "hexcasting:edified_button", + "hexcasting:edified_stairs", + "hexcasting:edified_fence", + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000000..a8b1c2eb67 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,30 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_tiles", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_pillar", + "hexcasting:slate", + "hexcasting:directrix/empty", + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean", + "hexcasting:impetus/empty", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/look", + "hexcasting:impetus/redstone", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_pillar", + "hexcasting:slate_amethyst_tiles", + "hexcasting:slate_amethyst_bricks", + "hexcasting:slate_amethyst_bricks_small", + "hexcasting:slate_amethyst_pillar", + "hexcasting:amethyst_sconce", + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_tiles", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000000..02d08df2b3 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust_block" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json new file mode 100644 index 0000000000..117722b2be --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_fences.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:edified_fence", + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json b/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json b/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Fabric/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json new file mode 100644 index 0000000000..2f79ec12a3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_bookshelf.json @@ -0,0 +1,107 @@ +{ + "variants": { + "facing=east,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 90 + }, + "facing=east,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 90 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 90 + } + ], + "facing=north,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true + }, + "facing=north,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true + } + ], + "facing=south,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 180 + }, + "facing=south,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 180 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 180 + } + ], + "facing=west,has_books=false": { + "model": "hexcasting:block/akashic_bookshelf_empty", + "uvlock": true, + "y": 270 + }, + "facing=west,has_books=true": [ + { + "model": "hexcasting:block/akashic_bookshelf_1", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_2", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_3", + "uvlock": true, + "y": 270 + }, + { + "model": "hexcasting:block/akashic_bookshelf_4", + "uvlock": true, + "y": 270 + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json new file mode 100644 index 0000000000..c4552b4918 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_ligature.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_ligature" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json new file mode 100644 index 0000000000..c2aa512a1e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/akashic_record.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/akashic_record" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json new file mode 100644 index 0000000000..267e1b4d43 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json new file mode 100644 index 0000000000..66b78f9a12 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json new file mode 100644 index 0000000000..c27c62ffcb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_dust_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_dust_block" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json new file mode 100644 index 0000000000..db8af585b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/amethyst_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json new file mode 100644 index 0000000000..257e10ca4d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_pillar.json @@ -0,0 +1,30 @@ +{ + "variants": { + "facing=down": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 180 + }, + "facing=east": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 90 + }, + "facing=north": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90 + }, + "facing=south": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 180 + }, + "facing=up": { + "model": "hexcasting:block/deco/amethyst_pillar" + }, + "facing=west": { + "model": "hexcasting:block/deco/amethyst_pillar", + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json new file mode 100644 index 0000000000..03a9ebb676 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_sconce.json @@ -0,0 +1,56 @@ +{ + "variants": { + "facing=down,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 180 + }, + "facing=down,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 180 + }, + "facing=east,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 90 + }, + "facing=east,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 90 + }, + "facing=north,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90 + }, + "facing=north,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90 + }, + "facing=south,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 180 + }, + "facing=south,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 180 + }, + "facing=up,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce" + }, + "facing=up,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce" + }, + "facing=west,waterlogged=false": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 270 + }, + "facing=west,waterlogged=true": { + "model": "hexcasting:block/amethyst_sconce", + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json new file mode 100644 index 0000000000..b716f2a5a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json new file mode 100644 index 0000000000..1c809c022b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..3a632c39f3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/ancient_scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/ancient_scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json new file mode 100644 index 0000000000..10383418f7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/aventurine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json new file mode 100644 index 0000000000..3207814e50 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/citrine_edified_leaves" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json new file mode 100644 index 0000000000..5e8ffe700c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/conjured_light.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/conjured" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json new file mode 100644 index 0000000000..155f55cfe6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/boolean.json @@ -0,0 +1,142 @@ +{ + "variants": { + "energized=false,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_down", + "x": 90 + }, + "energized=false,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_down", + "x": 90 + }, + "energized=false,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_down", + "x": 90 + }, + "energized=false,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_east", + "y": 90 + }, + "energized=false,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_east", + "y": 90 + }, + "energized=false,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_east", + "y": 90 + }, + "energized=false,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_north" + }, + "energized=false,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_north" + }, + "energized=false,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_north" + }, + "energized=false,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_south", + "y": 180 + }, + "energized=false,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_south", + "y": 180 + }, + "energized=false,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_south", + "y": 180 + }, + "energized=false,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_up", + "x": -90 + }, + "energized=false,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_up", + "x": -90 + }, + "energized=false,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_up", + "x": -90 + }, + "energized=false,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/dim_false_west", + "y": 270 + }, + "energized=false,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/dim_neither_west", + "y": 270 + }, + "energized=false,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/dim_true_west", + "y": 270 + }, + "energized=true,facing=down,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_down", + "x": 90 + }, + "energized=true,facing=down,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_down", + "x": 90 + }, + "energized=true,facing=down,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_down", + "x": 90 + }, + "energized=true,facing=east,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_east", + "y": 90 + }, + "energized=true,facing=east,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_east", + "y": 90 + }, + "energized=true,facing=east,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_east", + "y": 90 + }, + "energized=true,facing=north,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_north" + }, + "energized=true,facing=north,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_north" + }, + "energized=true,facing=north,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_north" + }, + "energized=true,facing=south,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_south", + "y": 180 + }, + "energized=true,facing=south,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_south", + "y": 180 + }, + "energized=true,facing=south,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_south", + "y": 180 + }, + "energized=true,facing=up,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_up", + "x": -90 + }, + "energized=true,facing=up,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_up", + "x": -90 + }, + "energized=true,facing=up,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_up", + "x": -90 + }, + "energized=true,facing=west,state=false": { + "model": "hexcasting:block/circle/directrix/boolean/lit_false_west", + "y": 270 + }, + "energized=true,facing=west,state=neither": { + "model": "hexcasting:block/circle/directrix/boolean/lit_neither_west", + "y": 270 + }, + "energized=true,facing=west,state=true": { + "model": "hexcasting:block/circle/directrix/boolean/lit_true_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json new file mode 100644 index 0000000000..33b013562c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/directrix/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/directrix/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/directrix/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/directrix/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/directrix/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/directrix/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json new file mode 100644 index 0000000000..c93068cabf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/directrix/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/dim_unpowered_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/dim_powered_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/directrix/redstone/lit_unpowered_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/directrix/redstone/lit_powered_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json new file mode 100644 index 0000000000..81efad6fd6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_button.json @@ -0,0 +1,118 @@ +{ + "variants": { + "face=ceiling,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 270 + }, + "face=ceiling,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 180 + }, + "face=ceiling,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180 + }, + "face=ceiling,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180 + }, + "face=ceiling,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "x": 180, + "y": 90 + }, + "face=ceiling,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "x": 180, + "y": 90 + }, + "face=floor,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 90 + }, + "face=floor,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 90 + }, + "face=floor,facing=north,powered=false": { + "model": "hexcasting:block/edified_button" + }, + "face=floor,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed" + }, + "face=floor,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 180 + }, + "face=floor,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 180 + }, + "face=floor,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "y": 270 + }, + "face=floor,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "y": 270 + }, + "face=wall,facing=east,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=east,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 90 + }, + "face=wall,facing=north,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=north,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90 + }, + "face=wall,facing=south,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=south,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 180 + }, + "face=wall,facing=west,powered=false": { + "model": "hexcasting:block/edified_button", + "uvlock": true, + "x": 90, + "y": 270 + }, + "face=wall,facing=west,powered=true": { + "model": "hexcasting:block/edified_button_pressed", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json new file mode 100644 index 0000000000..029d3bd5d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_door.json @@ -0,0 +1,124 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left" + }, + "facing=east,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 90 + }, + "facing=east,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right" + }, + "facing=east,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 270 + }, + "facing=east,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left" + }, + "facing=east,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 90 + }, + "facing=east,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right" + }, + "facing=east,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 270 + }, + "facing=north,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open" + }, + "facing=north,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 270 + }, + "facing=north,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 180 + }, + "facing=north,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 270 + }, + "facing=north,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open" + }, + "facing=north,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 270 + }, + "facing=north,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 180 + }, + "facing=south,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 90 + }, + "facing=south,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 180 + }, + "facing=south,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 90 + }, + "facing=south,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open" + }, + "facing=south,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 90 + }, + "facing=south,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 180 + }, + "facing=south,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 90 + }, + "facing=south,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open" + }, + "facing=west,half=lower,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_bottom_left", + "y": 180 + }, + "facing=west,half=lower,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_bottom_left_open", + "y": 270 + }, + "facing=west,half=lower,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_bottom_right", + "y": 180 + }, + "facing=west,half=lower,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_bottom_right_open", + "y": 90 + }, + "facing=west,half=upper,hinge=left,open=false": { + "model": "hexcasting:block/edified_door_top_left", + "y": 180 + }, + "facing=west,half=upper,hinge=left,open=true": { + "model": "hexcasting:block/edified_door_top_left_open", + "y": 270 + }, + "facing=west,half=upper,hinge=right,open=false": { + "model": "hexcasting:block/edified_door_top_right", + "y": 180 + }, + "facing=west,half=upper,hinge=right,open=true": { + "model": "hexcasting:block/edified_door_top_right_open", + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json new file mode 100644 index 0000000000..7167013cf7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence.json @@ -0,0 +1,48 @@ +{ + "multipart": [ + { + "apply": { + "model": "hexcasting:block/edified_fence_post" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true + }, + "when": { + "north": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 180 + }, + "when": { + "south": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 270 + }, + "when": { + "west": "true" + } + }, + { + "apply": { + "model": "hexcasting:block/edified_fence_side", + "uvlock": true, + "y": 90 + }, + "when": { + "east": "true" + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json new file mode 100644 index 0000000000..f925ddfddd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_fence_gate.json @@ -0,0 +1,80 @@ +{ + "variants": { + "facing=east,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 270 + }, + "facing=north,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 180 + }, + "facing=south,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true + }, + "facing=south,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true + }, + "facing=south,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true + }, + "facing=south,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true + }, + "facing=west,in_wall=false,open=false": { + "model": "hexcasting:block/edified_fence_gate", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=false,open=true": { + "model": "hexcasting:block/edified_fence_gate_open", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=false": { + "model": "hexcasting:block/edified_fence_gate_wall", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=true": { + "model": "hexcasting:block/edified_fence_gate_wall_open", + "uvlock": true, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json new file mode 100644 index 0000000000..4cd8fe5d14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json new file mode 100644 index 0000000000..7526dda321 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_amethyst.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_amethyst" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_amethyst_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json new file mode 100644 index 0000000000..ed8e454e7e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_aventurine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_aventurine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_aventurine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json new file mode 100644 index 0000000000..258b377acb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_citrine.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_citrine" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_citrine_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json new file mode 100644 index 0000000000..078f72a986 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_log_purple.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_log_purple" + }, + "axis=z": { + "model": "hexcasting:block/edified_log_purple_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json new file mode 100644 index 0000000000..17d99a7903 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_panel.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_panel" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json new file mode 100644 index 0000000000..a2d790f061 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_planks.json @@ -0,0 +1,17 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/edified_planks", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_2", + "weight": 3 + }, + { + "model": "hexcasting:block/edified_planks_3" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json new file mode 100644 index 0000000000..6da4bab988 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_pressure_plate.json @@ -0,0 +1,10 @@ +{ + "variants": { + "powered=false": { + "model": "hexcasting:block/edified_pressure_plate" + }, + "powered=true": { + "model": "hexcasting:block/edified_pressure_plate_down" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json new file mode 100644 index 0000000000..6a4d4be0d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_slab.json @@ -0,0 +1,13 @@ +{ + "variants": { + "type=bottom": { + "model": "hexcasting:block/edified_slab" + }, + "type=double": { + "model": "hexcasting:block/edified_planks" + }, + "type=top": { + "model": "hexcasting:block/edified_slab_top" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json new file mode 100644 index 0000000000..23ac40ca7e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "hexcasting:block/edified_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "hexcasting:block/edified_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "hexcasting:block/edified_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json new file mode 100644 index 0000000000..23d71da006 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_tile.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/edified_tile" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json new file mode 100644 index 0000000000..0df527ca32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_trapdoor.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 90 + }, + "facing=east,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 90 + }, + "facing=east,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 90 + }, + "facing=east,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 270 + }, + "facing=north,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom" + }, + "facing=north,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open" + }, + "facing=north,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top" + }, + "facing=north,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 180 + }, + "facing=south,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 180 + }, + "facing=south,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 180 + }, + "facing=south,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 180 + }, + "facing=south,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180 + }, + "facing=west,half=bottom,open=false": { + "model": "hexcasting:block/edified_trapdoor_bottom", + "y": 270 + }, + "facing=west,half=bottom,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "y": 270 + }, + "facing=west,half=top,open=false": { + "model": "hexcasting:block/edified_trapdoor_top", + "y": 270 + }, + "facing=west,half=top,open=true": { + "model": "hexcasting:block/edified_trapdoor_open", + "x": 180, + "y": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json new file mode 100644 index 0000000000..1d963101fc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json new file mode 100644 index 0000000000..057ad53aa6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/empty.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/empty/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/empty/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/empty/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/empty/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/empty/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/empty/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json new file mode 100644 index 0000000000..0db9af4b2d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/look.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/look/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/look/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/look/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/look/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/look/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/look/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/look/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/look/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/look/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/look/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/look/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/look/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json new file mode 100644 index 0000000000..2ad46e21cd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/redstone.json @@ -0,0 +1,96 @@ +{ + "variants": { + "energized=false,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_down", + "x": 90 + }, + "energized=false,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_east", + "y": 90 + }, + "energized=false,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_north" + }, + "energized=false,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_south", + "y": 180 + }, + "energized=false,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_up", + "x": -90 + }, + "energized=false,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=false,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/dim_west", + "y": 270 + }, + "energized=true,facing=down,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=down,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_down", + "x": 90 + }, + "energized=true,facing=east,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=east,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_east", + "y": 90 + }, + "energized=true,facing=north,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=north,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_north" + }, + "energized=true,facing=south,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=south,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_south", + "y": 180 + }, + "energized=true,facing=up,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=up,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_up", + "x": -90 + }, + "energized=true,facing=west,powered=false": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + }, + "energized=true,facing=west,powered=true": { + "model": "hexcasting:block/circle/impetus/redstone/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json new file mode 100644 index 0000000000..32a772b27e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/impetus/rightclick.json @@ -0,0 +1,50 @@ +{ + "variants": { + "energized=false,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_down", + "x": 90 + }, + "energized=false,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_east", + "y": 90 + }, + "energized=false,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_north" + }, + "energized=false,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_south", + "y": 180 + }, + "energized=false,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_up", + "x": -90 + }, + "energized=false,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/dim_west", + "y": 270 + }, + "energized=true,facing=down": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_down", + "x": 90 + }, + "energized=true,facing=east": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_east", + "y": 90 + }, + "energized=true,facing=north": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_north" + }, + "energized=true,facing=south": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_south", + "y": 180 + }, + "energized=true,facing=up": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_up", + "x": -90 + }, + "energized=true,facing=west": { + "model": "hexcasting:block/circle/impetus/rightclick/lit_west", + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json new file mode 100644 index 0000000000..c6bce09cb5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json new file mode 100644 index 0000000000..e3d66f7ed3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..72aad9ca91 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json new file mode 100644 index 0000000000..ddb791a0b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/quenched_allay_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/quenched_allay_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json new file mode 100644 index 0000000000..2621fa1b04 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json new file mode 100644 index 0000000000..328e1b46d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/scroll_paper_lantern.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/scroll_paper_lantern" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json new file mode 100644 index 0000000000..8d7a817cc1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate.json @@ -0,0 +1,122 @@ +{ + "variants": { + "energized=false,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=false,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=false,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=false,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=false,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=false,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + }, + "energized=true,face=ceiling,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=ceiling,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 180 + }, + "energized=true,face=floor,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=floor,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true + }, + "energized=true,face=wall,facing=east": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 90 + }, + "energized=true,face=wall,facing=north": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90 + }, + "energized=true,face=wall,facing=south": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 180 + }, + "energized=true,face=wall,facing=west": { + "model": "hexcasting:block/slate", + "uvlock": true, + "x": 90, + "y": 270 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json new file mode 100644 index 0000000000..e99315f3fa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_2" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..e6b5557c2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "variants": { + "": [ + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + }, + { + "model": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json new file mode 100644 index 0000000000..056bc449b3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_amethyst_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_amethyst_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json new file mode 100644 index 0000000000..4c5f5d614b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_amethyst_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_amethyst_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json new file mode 100644 index 0000000000..35169aaa2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_block.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/slate_block" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json new file mode 100644 index 0000000000..003a0daafe --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json new file mode 100644 index 0000000000..cdd21fd4d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_bricks_small.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_bricks_small" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json new file mode 100644 index 0000000000..6d0e098f31 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_pillar.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/slate_pillar" + }, + "axis=z": { + "model": "hexcasting:block/slate_pillar_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json new file mode 100644 index 0000000000..1482ae0827 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/slate_tiles.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "hexcasting:block/deco/slate_tiles" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json new file mode 100644 index 0000000000..cb09f0122f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_log" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_log_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json new file mode 100644 index 0000000000..b6b89e3f85 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/blockstates/stripped_edified_wood.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "hexcasting:block/stripped_edified_wood" + }, + "axis=z": { + "model": "hexcasting:block/stripped_edified_wood_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json new file mode 100644 index 0000000000..dd5103c118 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf.json @@ -0,0 +1,68 @@ +{ + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#top_bottom" + }, + "east": { + "cullface": "east", + "texture": "#side" + }, + "north": { + "cullface": "north", + "texture": "#front" + }, + "south": { + "cullface": "south", + "texture": "#side" + }, + "up": { + "cullface": "up", + "texture": "#top_bottom" + }, + "west": { + "cullface": "west", + "texture": "#side" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "north": { + "cullface": "north", + "texture": "#overlay", + "tintindex": 0 + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + } + ], + "render_type": "minecraft:cutout", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "particle": "hexcasting:block/akashic_bookshelf_vert", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top_bottom": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json new file mode 100644 index 0000000000..2402c6c597 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_1.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json new file mode 100644 index 0000000000..4846d3c2e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_2.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json new file mode 100644 index 0000000000..9352317b12 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_3.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json new file mode 100644 index 0000000000..4f98ee656b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_4.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf", + "textures": { + "overlay": "hexcasting:block/akashic_bookshelf_overlay_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json new file mode 100644 index 0000000000..9b788e5d7c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_bookshelf_empty.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/orientable", + "textures": { + "front": "hexcasting:block/akashic_bookshelf", + "side": "hexcasting:block/akashic_bookshelf_horiz", + "top": "hexcasting:block/akashic_bookshelf_vert" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json new file mode 100644 index 0000000000..72a32c3aa8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_ligature.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json new file mode 100644 index 0000000000..7068b7d62f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/akashic_record.json @@ -0,0 +1,87 @@ +{ + "parent": "minecraft:block/block", + "elements": [ + { + "faces": { + "down": { + "cullface": "down", + "texture": "#outer" + }, + "east": { + "cullface": "east", + "texture": "#outer" + }, + "north": { + "cullface": "north", + "texture": "#outer" + }, + "south": { + "cullface": "south", + "texture": "#outer" + }, + "up": { + "cullface": "up", + "texture": "#outer" + }, + "west": { + "cullface": "west", + "texture": "#outer" + } + }, + "from": [ + 0, + 0, + 0 + ], + "to": [ + 16, + 16, + 16 + ] + }, + { + "faces": { + "down": { + "rotation": 180, + "texture": "#inner" + }, + "east": { + "rotation": 180, + "texture": "#inner" + }, + "north": { + "rotation": 180, + "texture": "#inner" + }, + "south": { + "rotation": 180, + "texture": "#inner" + }, + "up": { + "rotation": 180, + "texture": "#inner" + }, + "west": { + "rotation": 180, + "texture": "#inner" + } + }, + "from": [ + 15.75, + 15.75, + 15.75 + ], + "to": [ + 0.25, + 0.25, + 0.25 + ] + } + ], + "render_type": "minecraft:translucent", + "textures": { + "inner": "hexcasting:block/akashic_ligature", + "outer": "hexcasting:block/akashic_record", + "particle": "hexcasting:block/akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json new file mode 100644 index 0000000000..8fa450ab32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_dust_block.json @@ -0,0 +1,6 @@ +{ + "parent": "hexcasting:block/cube_half_mirrored", + "textures": { + "all": "hexcasting:block/amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json new file mode 100644 index 0000000000..463617eb53 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/amethyst_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/amethyst_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json new file mode 100644 index 0000000000..5b5b77bbf0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..19fc5366df --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/ancient_scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/ancient_scroll_paper_lantern_bottom", + "side": "hexcasting:block/ancient_scroll_paper_lantern_side", + "top": "hexcasting:block/ancient_scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json new file mode 100644 index 0000000000..eb1802e0b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/aventurine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/aventurine_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json new file mode 100644 index 0000000000..c132d88be4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_dim_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json new file mode 100644 index 0000000000..3477cd9b15 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/dim_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_dim_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json new file mode 100644 index 0000000000..ccc4319820 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_false_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_false", + "north": "hexcasting:block/circle/directrix/boolean/front_lit_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_false", + "west": "hexcasting:block/circle/directrix/boolean/right_false" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json new file mode 100644 index 0000000000..20c3b6cedf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_neither_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_neither", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_not_true", + "up": "hexcasting:block/circle/directrix/boolean/top_neither", + "west": "hexcasting:block/circle/directrix/boolean/right_neither" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json new file mode 100644 index 0000000000..5c453220fd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/boolean/lit_true_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/boolean/left_true", + "north": "hexcasting:block/circle/directrix/boolean/front_not_false", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/boolean/back_lit_true", + "up": "hexcasting:block/circle/directrix/boolean/top_true", + "west": "hexcasting:block/circle/directrix/boolean/right_true" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json new file mode 100644 index 0000000000..8178542bf4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_dim", + "north": "hexcasting:block/circle/directrix/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_dim", + "up": "hexcasting:block/circle/directrix/empty/top_dim", + "west": "hexcasting:block/circle/directrix/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json new file mode 100644 index 0000000000..8da64102c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/empty/left_lit", + "north": "hexcasting:block/circle/directrix/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/empty/back_lit", + "up": "hexcasting:block/circle/directrix/empty/top_lit", + "west": "hexcasting:block/circle/directrix/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json new file mode 100644 index 0000000000..adb3eb5128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json new file mode 100644 index 0000000000..c191d8a113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/dim_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json new file mode 100644 index 0000000000..97d3da2808 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_powered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_powered", + "north": "hexcasting:block/circle/directrix/redstone/front_lit_powered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_dim_powered", + "up": "hexcasting:block/circle/directrix/redstone/top_powered", + "west": "hexcasting:block/circle/directrix/redstone/right_powered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json new file mode 100644 index 0000000000..722076a071 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/directrix/redstone/lit_unpowered_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/directrix/redstone/left_unpowered", + "north": "hexcasting:block/circle/directrix/redstone/front_dim_unpowered", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/directrix/redstone/back_lit_unpowered", + "up": "hexcasting:block/circle/directrix/redstone/top_unpowered", + "west": "hexcasting:block/circle/directrix/redstone/right_unpowered" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json new file mode 100644 index 0000000000..479ee7c42b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_dim", + "north": "hexcasting:block/circle/impetus/empty/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/empty/top_dim", + "west": "hexcasting:block/circle/impetus/empty/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json new file mode 100644 index 0000000000..1fb7369cd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/empty/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/empty/left_lit", + "north": "hexcasting:block/circle/impetus/empty/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/empty/top_lit", + "west": "hexcasting:block/circle/impetus/empty/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json new file mode 100644 index 0000000000..76165760a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_dim", + "north": "hexcasting:block/circle/impetus/look/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/look/top_dim", + "west": "hexcasting:block/circle/impetus/look/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json new file mode 100644 index 0000000000..504eba8930 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/look/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/look/left_lit", + "north": "hexcasting:block/circle/impetus/look/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/look/top_lit", + "west": "hexcasting:block/circle/impetus/look/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json new file mode 100644 index 0000000000..71ea895f6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_dim", + "north": "hexcasting:block/circle/impetus/redstone/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/redstone/top_dim", + "west": "hexcasting:block/circle/impetus/redstone/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json new file mode 100644 index 0000000000..12630ca3cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/redstone/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/redstone/left_lit", + "north": "hexcasting:block/circle/impetus/redstone/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/redstone/top_lit", + "west": "hexcasting:block/circle/impetus/redstone/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json new file mode 100644 index 0000000000..c5fdbc02b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/dim_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_dim", + "north": "hexcasting:block/circle/impetus/rightclick/front_dim", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_dim", + "up": "hexcasting:block/circle/impetus/rightclick/top_dim", + "west": "hexcasting:block/circle/impetus/rightclick/right_dim" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_down.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_east.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_north.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_south.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_up.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json new file mode 100644 index 0000000000..3840e6cb08 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/circle/impetus/rightclick/lit_west.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "hexcasting:block/circle/bottom", + "east": "hexcasting:block/circle/impetus/rightclick/left_lit", + "north": "hexcasting:block/circle/impetus/rightclick/front_lit", + "particle": "hexcasting:block/slate_block", + "south": "hexcasting:block/circle/impetus/back_lit", + "up": "hexcasting:block/circle/impetus/rightclick/top_lit", + "west": "hexcasting:block/circle/impetus/rightclick/right_lit" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json new file mode 100644 index 0000000000..3bef12c734 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/citrine_edified_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/leaves", + "render_type": "minecraft:cutout_mipped", + "textures": { + "all": "hexcasting:block/citrine_edified_leaves" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json new file mode 100644 index 0000000000..9f80c11ee0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/conjured.json @@ -0,0 +1,6 @@ +{ + "render_type": "minecraft:cutout", + "textures": { + "particle": "minecraft:block/amethyst_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json new file mode 100644 index 0000000000..89c8ec51c2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json new file mode 100644 index 0000000000..fc1202b603 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json new file mode 100644 index 0000000000..5ee8934b7a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_pillar.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/deco/amethyst_pillar_bottom", + "side": "hexcasting:block/deco/amethyst_pillar_side", + "top": "hexcasting:block/deco/amethyst_pillar_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json new file mode 100644 index 0000000000..ab9ffcda39 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json new file mode 100644 index 0000000000..61215cda68 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json new file mode 100644 index 0000000000..536da9000b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json new file mode 100644 index 0000000000..e45bf99d14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json new file mode 100644 index 0000000000..91ade20515 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json new file mode 100644 index 0000000000..e6b6bd7b22 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json new file mode 100644 index 0000000000..7da0cdfcf8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_bricks_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json new file mode 100644 index 0000000000..6d6150b8d5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json new file mode 100644 index 0000000000..758194fe82 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json new file mode 100644 index 0000000000..5c83c33eb0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/quenched_allay_tiles_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json new file mode 100644 index 0000000000..910ec09904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json new file mode 100644 index 0000000000..4d565a54ae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json new file mode 100644 index 0000000000..a9072bacc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json new file mode 100644 index 0000000000..ad3c92af5d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json new file mode 100644 index 0000000000..1f24ff9a6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json new file mode 100644 index 0000000000..e106adbead --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_bricks_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_bricks_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json new file mode 100644 index 0000000000..2c80ba1498 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_amethyst_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json new file mode 100644 index 0000000000..7fb51bcd7c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json new file mode 100644 index 0000000000..3b262eafff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json new file mode 100644 index 0000000000..d18efee914 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/deco/slate_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/slate_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json new file mode 100644 index 0000000000..1c75ef18d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json new file mode 100644 index 0000000000..a026dba7ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_button_pressed.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_pressed", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json new file mode 100644 index 0000000000..610c3ae5b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json new file mode 100644 index 0000000000..acf2e96275 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json new file mode 100644 index 0000000000..2eaa905b77 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json new file mode 100644 index 0000000000..8a46564f74 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_bottom_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_bottom_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json new file mode 100644 index 0000000000..90ea9df1d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json new file mode 100644 index 0000000000..5573390683 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_left_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_left_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json new file mode 100644 index 0000000000..3a78e863b7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json new file mode 100644 index 0000000000..26d8c1a200 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_door_top_right_open.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/door_top_right_open", + "render_type": "minecraft:cutout", + "textures": { + "bottom": "hexcasting:block/edified_door_lower", + "top": "hexcasting:block/edified_door_upper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json new file mode 100644 index 0000000000..c3015ca6d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json new file mode 100644 index 0000000000..ac141eb406 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json new file mode 100644 index 0000000000..ea98b16740 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json new file mode 100644 index 0000000000..86d82ca2fc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_gate_wall_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall_open", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json new file mode 100644 index 0000000000..281f2acc6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json new file mode 100644 index 0000000000..707af51bf2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_side", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json new file mode 100644 index 0000000000..9ba1530b0c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json new file mode 100644 index 0000000000..e9833c81a8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json new file mode 100644 index 0000000000..fdfc8bd1c1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_amethyst_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json new file mode 100644 index 0000000000..f9f832f6ee --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json new file mode 100644 index 0000000000..e7ddcd8ed5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_aventurine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_aventurine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json new file mode 100644 index 0000000000..ea1b1d60a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json new file mode 100644 index 0000000000..2ae70b9aef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_citrine_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_citrine" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json new file mode 100644 index 0000000000..84e434e72a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json new file mode 100644 index 0000000000..70736370d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json new file mode 100644 index 0000000000..235890db18 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_log_purple_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log_top", + "side": "hexcasting:block/deco/edified_log_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json new file mode 100644 index 0000000000..3d790f2af0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_panel.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_panel" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json new file mode 100644 index 0000000000..a722301054 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json new file mode 100644 index 0000000000..d0c4c5832b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json new file mode 100644 index 0000000000..bad8e6ac05 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_planks_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_planks_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json new file mode 100644 index 0000000000..5a1b2b5727 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_up", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json new file mode 100644 index 0000000000..eeaa36461c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_pressure_plate_down.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/pressure_plate_down", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json new file mode 100644 index 0000000000..09d601ec7b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json new file mode 100644 index 0000000000..f4d2fcf98c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab_top", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json new file mode 100644 index 0000000000..6e9ae9aaae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json new file mode 100644 index 0000000000..7597f2c8a4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_inner.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/inner_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json new file mode 100644 index 0000000000..62d7ab50a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_stairs_outer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/outer_stairs", + "textures": { + "bottom": "hexcasting:block/edified_planks", + "side": "hexcasting:block/edified_planks", + "top": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json new file mode 100644 index 0000000000..595adf007a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_tile.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/edified_tile" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json new file mode 100644 index 0000000000..9c65b36965 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_bottom", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json new file mode 100644 index 0000000000..40217afd9c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_open.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_open", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json new file mode 100644 index 0000000000..325f5d4351 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_trapdoor_top.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/template_orientable_trapdoor_top", + "render_type": "minecraft:cutout", + "textures": { + "texture": "hexcasting:block/edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json new file mode 100644 index 0000000000..22851df079 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json new file mode 100644 index 0000000000..72149b4bc9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/edified_log", + "side": "hexcasting:block/edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json new file mode 100644 index 0000000000..6c2a8abe6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json new file mode 100644 index 0000000000..441d91052a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json new file mode 100644 index 0000000000..a561a358cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json new file mode 100644 index 0000000000..a6fe237391 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/quenched_allay_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json new file mode 100644 index 0000000000..e0c97c18e6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..2b93f32793 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_bricks_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_bricks_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json new file mode 100644 index 0000000000..3d953c5628 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/quenched_allay_tiles.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/deco/quenched_allay_tiles_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json new file mode 100644 index 0000000000..621451b72c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json new file mode 100644 index 0000000000..3c16a2113f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/scroll_paper_lantern.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "bottom": "hexcasting:block/scroll_paper_lantern_bottom", + "side": "hexcasting:block/scroll_paper_lantern_side", + "top": "hexcasting:block/scroll_paper_lantern_top" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1ec3ef6cf3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json new file mode 100644 index 0000000000..bbd24d1c98 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_amethyst_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_amethyst_pillar_end", + "side": "hexcasting:block/deco/slate_amethyst_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json new file mode 100644 index 0000000000..2d8635f925 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json new file mode 100644 index 0000000000..697f4daab2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json new file mode 100644 index 0000000000..cca16a0c07 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/slate_pillar_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/deco/slate_pillar_end", + "side": "hexcasting:block/deco/slate_pillar_side" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json new file mode 100644 index 0000000000..4aa871e92c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json new file mode 100644 index 0000000000..0925c23c78 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_log_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log_top", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json new file mode 100644 index 0000000000..8ef17c0d21 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json new file mode 100644 index 0000000000..57dcfcc53c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/block/stripped_edified_wood_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "hexcasting:block/stripped_edified_log", + "side": "hexcasting:block/stripped_edified_log" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json new file mode 100644 index 0000000000..f6947c4360 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/abacus.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/abacus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json new file mode 100644 index 0000000000..7c88c3e218 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_bookshelf.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_bookshelf_empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json new file mode 100644 index 0000000000..de9a37be49 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_ligature.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_ligature" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json new file mode 100644 index 0000000000..1ea5e0eeb6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/akashic_record.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/akashic_record" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json new file mode 100644 index 0000000000..5ec0842948 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json new file mode 100644 index 0000000000..1b8fe48dd2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json new file mode 100644 index 0000000000..140659dfab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json new file mode 100644 index 0000000000..8cd53fc3ab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_dust_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_dust_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json new file mode 100644 index 0000000000..d6015ea1f2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json new file mode 100644 index 0000000000..98d9d0c82f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json new file mode 100644 index 0000000000..bb1657f9a1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_sconce.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/amethyst_sconce" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json new file mode 100644 index 0000000000..b8ecd40c70 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json new file mode 100644 index 0000000000..8e99cad0e1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/ancient" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json new file mode 100644 index 0000000000..ffc8b5e1cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/ancient_cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/ancient_cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json new file mode 100644 index 0000000000..b38ad18d6d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_ancient_cypher", + "layer1": "hexcasting:item/cad/0_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json new file mode 100644 index 0000000000..e8b7b12d55 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json new file mode 100644 index 0000000000..856b0a26d7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_ancient_cypher", + "layer1": "hexcasting:item/cad/1_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json new file mode 100644 index 0000000000..3badfcdd0f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json new file mode 100644 index 0000000000..effb9e0198 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_ancient_cypher", + "layer1": "hexcasting:item/cad/2_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json new file mode 100644 index 0000000000..98aabd91e8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json new file mode 100644 index 0000000000..2f19e9feea --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_ancient_cypher", + "layer1": "hexcasting:item/cad/3_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json new file mode 100644 index 0000000000..93318f7bc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json new file mode 100644 index 0000000000..081cfd65c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_ancient_cypher", + "layer1": "hexcasting:item/cad/4_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json new file mode 100644 index 0000000000..836e50f966 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json new file mode 100644 index 0000000000..2ab2d47128 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_ancient_cypher", + "layer1": "hexcasting:item/cad/5_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json new file mode 100644 index 0000000000..bf9c9fe505 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json new file mode 100644 index 0000000000..199292d90f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_ancient_cypher", + "layer1": "hexcasting:item/cad/6_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json new file mode 100644 index 0000000000..56e0653080 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json new file mode 100644 index 0000000000..b408892c14 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_ancient_cypher", + "layer1": "hexcasting:item/cad/7_ancient_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json new file mode 100644 index 0000000000..810d0e68c5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..39cf0ac289 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/ancient_scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json new file mode 100644 index 0000000000..d0db0e434f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/artifact", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/artifact_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/artifact_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/artifact_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/artifact_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/artifact_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/artifact_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/artifact_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/artifact_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json new file mode 100644 index 0000000000..1e835b5f74 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_artifact", + "layer1": "hexcasting:item/cad/0_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json new file mode 100644 index 0000000000..870900b6f1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json new file mode 100644 index 0000000000..a0f005be3f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_artifact", + "layer1": "hexcasting:item/cad/1_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json new file mode 100644 index 0000000000..f2f7fbea97 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json new file mode 100644 index 0000000000..cade3931d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_artifact", + "layer1": "hexcasting:item/cad/2_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json new file mode 100644 index 0000000000..2cb6553e13 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json new file mode 100644 index 0000000000..23c0456285 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_artifact", + "layer1": "hexcasting:item/cad/3_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json new file mode 100644 index 0000000000..216c308d2c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json new file mode 100644 index 0000000000..d48959f9d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_artifact", + "layer1": "hexcasting:item/cad/4_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json new file mode 100644 index 0000000000..d3ca0607a4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json new file mode 100644 index 0000000000..50a87b02a5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_artifact", + "layer1": "hexcasting:item/cad/5_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json new file mode 100644 index 0000000000..c66d93ec85 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json new file mode 100644 index 0000000000..3d5f969ddf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_artifact", + "layer1": "hexcasting:item/cad/6_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json new file mode 100644 index 0000000000..1b89f90904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json new file mode 100644 index 0000000000..0e9043060d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/artifact_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_artifact", + "layer1": "hexcasting:item/cad/7_artifact_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json new file mode 100644 index 0000000000..0ae3302116 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/aventurine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json new file mode 100644 index 0000000000..11be0c6cd1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/battery.json @@ -0,0 +1,179 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/phial_small_0", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_small_1", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_small_2", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_small_3", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_small_4", + "predicate": { + "hexcasting:max_media": 0.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_medium_0", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_medium_1", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_medium_2", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_medium_3", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_medium_4", + "predicate": { + "hexcasting:max_media": 1.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_large_0", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_large_1", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_large_2", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_large_3", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_large_4", + "predicate": { + "hexcasting:max_media": 2.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_larger_0", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_larger_1", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_larger_2", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_larger_3", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_larger_4", + "predicate": { + "hexcasting:max_media": 3.0, + "hexcasting:media": 1.0 + } + }, + { + "model": "hexcasting:item/phial_largest_0", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.0 + } + }, + { + "model": "hexcasting:item/phial_largest_1", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.25 + } + }, + { + "model": "hexcasting:item/phial_largest_2", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.5 + } + }, + { + "model": "hexcasting:item/phial_largest_3", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 0.75 + } + }, + { + "model": "hexcasting:item/phial_largest_4", + "predicate": { + "hexcasting:max_media": 4.0, + "hexcasting:media": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json new file mode 100644 index 0000000000..2d147958cb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/charged_amethyst.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/charged_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cherry_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json new file mode 100644 index 0000000000..f44ca6c924 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/citrine_edified_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json new file mode 100644 index 0000000000..a0bab4ff76 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/conjured_light.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json new file mode 100644 index 0000000000..452b44f612 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/creative_unlocker.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/creative_unlocker" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json new file mode 100644 index 0000000000..1a93187096 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/cypher", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/cypher_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/cypher_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/cypher_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/cypher_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/cypher_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/cypher_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/cypher_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/cypher_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json new file mode 100644 index 0000000000..190be7e602 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_cypher", + "layer1": "hexcasting:item/cad/0_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json new file mode 100644 index 0000000000..71a9ff7cc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json new file mode 100644 index 0000000000..abff99cd2f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_cypher", + "layer1": "hexcasting:item/cad/1_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json new file mode 100644 index 0000000000..f7b22a7958 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json new file mode 100644 index 0000000000..75143f8a30 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_cypher", + "layer1": "hexcasting:item/cad/2_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json new file mode 100644 index 0000000000..da55138305 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json new file mode 100644 index 0000000000..cbac2eaf44 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_cypher", + "layer1": "hexcasting:item/cad/3_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json new file mode 100644 index 0000000000..90430a8f8a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json new file mode 100644 index 0000000000..e56ed90c0a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_cypher", + "layer1": "hexcasting:item/cad/4_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json new file mode 100644 index 0000000000..83f0da6e92 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json new file mode 100644 index 0000000000..9561773539 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_cypher", + "layer1": "hexcasting:item/cad/5_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json new file mode 100644 index 0000000000..bdb310d836 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json new file mode 100644 index 0000000000..f9ed07c951 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_cypher", + "layer1": "hexcasting:item/cad/6_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json new file mode 100644 index 0000000000..29e4768e9a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json new file mode 100644 index 0000000000..2de0bb8752 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/cypher_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_cypher", + "layer1": "hexcasting:item/cad/7_cypher_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json new file mode 100644 index 0000000000..9041330dd9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/default_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/default" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json new file mode 100644 index 0000000000..cd729d804c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/boolean.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/boolean/lit_false_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json new file mode 100644 index 0000000000..98be3ef487 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/empty/dim_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json new file mode 100644 index 0000000000..e2b947d5a9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/directrix/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/directrix/redstone/lit_unpowered_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json new file mode 100644 index 0000000000..2f55b6c22b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_black.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_black" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json new file mode 100644 index 0000000000..add421a999 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json new file mode 100644 index 0000000000..3be301eb1a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_brown.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_brown" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json new file mode 100644 index 0000000000..c436f3155b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_cyan.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_cyan" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json new file mode 100644 index 0000000000..146f01411c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json new file mode 100644 index 0000000000..679f147944 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_green.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_green" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..433877e853 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_blue.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..f5625b67c2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_light_gray.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_light_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json new file mode 100644 index 0000000000..c1cf22959e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_lime.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_lime" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json new file mode 100644 index 0000000000..12dcaa82c4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_magenta.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_magenta" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json new file mode 100644 index 0000000000..99679c17f8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_orange.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_orange" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json new file mode 100644 index 0000000000..c138e93ff0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_pink" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json new file mode 100644 index 0000000000..d31e3b601c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json new file mode 100644 index 0000000000..1fb8f9dd4d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_red.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_red" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json new file mode 100644 index 0000000000..db4d15eb32 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_white.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_white" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json new file mode 100644 index 0000000000..594bb0a09d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/dye_colorizer_yellow.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/dye_yellow" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json new file mode 100644 index 0000000000..e18736c2c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_button.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/button_inventory", + "textures": { + "texture": "hexcasting:block/edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json new file mode 100644 index 0000000000..5d6fb8d7ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_door.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/edified_door" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json new file mode 100644 index 0000000000..db31b01904 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_inventory" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json new file mode 100644 index 0000000000..3dfe521195 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_fence_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_fence_gate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json new file mode 100644 index 0000000000..d3c7aeeb06 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json new file mode 100644 index 0000000000..8e80eb679a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_amethyst.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_amethyst" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json new file mode 100644 index 0000000000..45007ec40b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_aventurine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_aventurine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json new file mode 100644 index 0000000000..9cae394851 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_citrine.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_citrine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json new file mode 100644 index 0000000000..62c67453ce --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_log_purple.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_log_purple" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json new file mode 100644 index 0000000000..355e2765e1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_panel.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_panel" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json new file mode 100644 index 0000000000..4ed5d45aab --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_planks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json new file mode 100644 index 0000000000..921f7f5bd0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_pressure_plate.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_pressure_plate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json new file mode 100644 index 0000000000..4772af6ed1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_slab" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json new file mode 100644 index 0000000000..90eb4d5123 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_stairs" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json new file mode 100644 index 0000000000..05702f6ed8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_tile.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_tile" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json new file mode 100644 index 0000000000..8c89f1e881 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_trapdoor.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_trapdoor_bottom" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json new file mode 100644 index 0000000000..c9bfee3a01 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json new file mode 100644 index 0000000000..78328a9dee --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/focus", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/focus_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/focus_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/focus_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/focus_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/focus_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/focus_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/focus_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/focus_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json new file mode 100644 index 0000000000..508a3497f6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_filled", + "layer1": "hexcasting:item/cad/0_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json new file mode 100644 index 0000000000..0a64292241 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_focus_sealed", + "layer1": "hexcasting:item/cad/0_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json new file mode 100644 index 0000000000..75d8bf400d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json new file mode 100644 index 0000000000..bd04934627 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_filled", + "layer1": "hexcasting:item/cad/1_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json new file mode 100644 index 0000000000..001bf05b5a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_focus_sealed", + "layer1": "hexcasting:item/cad/1_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json new file mode 100644 index 0000000000..a9ef859978 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json new file mode 100644 index 0000000000..05c2799dfc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_filled", + "layer1": "hexcasting:item/cad/2_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json new file mode 100644 index 0000000000..1c7c230bef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_focus_sealed", + "layer1": "hexcasting:item/cad/2_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json new file mode 100644 index 0000000000..fb366d08b2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json new file mode 100644 index 0000000000..3ad27dfcdf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_filled", + "layer1": "hexcasting:item/cad/3_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json new file mode 100644 index 0000000000..447b7b4198 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_focus_sealed", + "layer1": "hexcasting:item/cad/3_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json new file mode 100644 index 0000000000..a3c1bf4eb2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json new file mode 100644 index 0000000000..8b9eb2024f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_filled", + "layer1": "hexcasting:item/cad/4_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json new file mode 100644 index 0000000000..2831235f44 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_focus_sealed", + "layer1": "hexcasting:item/cad/4_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json new file mode 100644 index 0000000000..e13b4fa14b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json new file mode 100644 index 0000000000..cbac2be535 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_filled", + "layer1": "hexcasting:item/cad/5_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json new file mode 100644 index 0000000000..248801d925 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_focus_sealed", + "layer1": "hexcasting:item/cad/5_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json new file mode 100644 index 0000000000..3bc3f8518f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json new file mode 100644 index 0000000000..e950df1223 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_filled", + "layer1": "hexcasting:item/cad/6_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json new file mode 100644 index 0000000000..c10282e6b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_focus_sealed", + "layer1": "hexcasting:item/cad/6_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json new file mode 100644 index 0000000000..8ad8085617 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json new file mode 100644 index 0000000000..e6d7b1f28d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_filled", + "layer1": "hexcasting:item/cad/7_focus_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json new file mode 100644 index 0000000000..52d149f4ae --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/focus_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_focus_sealed", + "layer1": "hexcasting:item/cad/7_focus_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json new file mode 100644 index 0000000000..68e7192da1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/empty.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/empty/dim_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json new file mode 100644 index 0000000000..73f69303be --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/look.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/look/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json new file mode 100644 index 0000000000..523b5343b6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/redstone.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/redstone/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json new file mode 100644 index 0000000000..381232171f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/impetus/rightclick.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/circle/impetus/rightclick/lit_east" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json new file mode 100644 index 0000000000..22447e1fbd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/jeweler_hammer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/jeweler_hammer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json new file mode 100644 index 0000000000..2fdc8f9ce5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lens.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "display": { + "head": { + "scale": [ + 0.4, + 0.4, + 0.4 + ], + "translation": [ + -2.5, + 0, + -8 + ] + } + }, + "textures": { + "layer0": "hexcasting:item/lens" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json new file mode 100644 index 0000000000..2b2f9e66fa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/lore_fragment.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/lore_fragment" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json new file mode 100644 index 0000000000..f40e6b8ab1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/old_staff.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/old" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json new file mode 100644 index 0000000000..a840c0e427 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/patchouli_book.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/patchouli_book" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json new file mode 100644 index 0000000000..db3db02acd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json new file mode 100644 index 0000000000..bdff2d1022 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json new file mode 100644 index 0000000000..9c09bea449 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json new file mode 100644 index 0000000000..085960c8d8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json new file mode 100644 index 0000000000..c39357f8de --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_large_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_large_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json new file mode 100644 index 0000000000..d5e18bb295 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json new file mode 100644 index 0000000000..b19928c486 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json new file mode 100644 index 0000000000..ac7ed775cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json new file mode 100644 index 0000000000..b02ce98e95 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json new file mode 100644 index 0000000000..8b313df86f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_larger_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_larger_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json new file mode 100644 index 0000000000..0e44b418f2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json new file mode 100644 index 0000000000..4f456814f5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json new file mode 100644 index 0000000000..ab2bdf4a2b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json new file mode 100644 index 0000000000..10d70acab3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json new file mode 100644 index 0000000000..3c0682e560 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_largest_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_largest_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json new file mode 100644 index 0000000000..cb8b4c0920 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json new file mode 100644 index 0000000000..a7f30e8113 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json new file mode 100644 index 0000000000..f9f5615cf2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json new file mode 100644 index 0000000000..dbfcb528bd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json new file mode 100644 index 0000000000..a7501a8e1b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_medium_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_medium_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json new file mode 100644 index 0000000000..fda398e2d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json new file mode 100644 index 0000000000..df784108aa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json new file mode 100644 index 0000000000..f868032c36 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json new file mode 100644 index 0000000000..ce4a7999b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json new file mode 100644 index 0000000000..bde40839db --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/phial_small_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/phial/phial_small_4" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json new file mode 100644 index 0000000000..9c68ff47ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_agender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_agender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json new file mode 100644 index 0000000000..eb0fabc595 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aroace.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aroace" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..7ea60f31e3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_aromantic.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_aromantic" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json new file mode 100644 index 0000000000..d40b1f2bcb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_asexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_asexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..e1d4b2d77f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_bisexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_bisexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..cd0fe06093 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demiboy.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demiboy" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..afda4cabea --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_demigirl.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_demigirl" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json new file mode 100644 index 0000000000..353816c8ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_gay.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_gay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..fe3641c797 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderfluid.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderfluid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..270eeb011f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_genderqueer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_genderqueer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json new file mode 100644 index 0000000000..506facd3de --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_intersex.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_intersex" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..61d110d4cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_lesbian.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_lesbian" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..0212b47a17 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_nonbinary.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_nonbinary" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json new file mode 100644 index 0000000000..706726a311 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_pansexual.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_pansexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json new file mode 100644 index 0000000000..e6ecd7890e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_plural.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_plural" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json new file mode 100644 index 0000000000..2655a8e596 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/pride_colorizer_transgender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/pride_transgender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json new file mode 100644 index 0000000000..c6ee6b0951 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/quenched_allay_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/quenched_allay_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json new file mode 100644 index 0000000000..c3a1b63856 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0e376a548 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_bricks_small.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_bricks_small_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json new file mode 100644 index 0000000000..495e817b78 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_shard.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/quenched_shard_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/quenched_shard_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json new file mode 100644 index 0000000000..5ea5cf33c5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_allay_tiles.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:block/deco/quenched_allay_tiles_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:block/deco/quenched_allay_tiles_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json new file mode 100644 index 0000000000..bdd43ddc80 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json new file mode 100644 index 0000000000..4cffa2efe0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json new file mode 100644 index 0000000000..e24c8dafbf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json new file mode 100644 index 0000000000..208890fe3d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/quenched_shard_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "hexcasting:item/quenched_shard_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json new file mode 100644 index 0000000000..5453ed3ec6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_large", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_large", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json new file mode 100644 index 0000000000..192b9920a6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_large" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json new file mode 100644 index 0000000000..eccfe83cb7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json new file mode 100644 index 0000000000..5f66417b21 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_ancient_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_ancient_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json new file mode 100644 index 0000000000..7752e9be45 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_medium.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_medium", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_medium", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json new file mode 100644 index 0000000000..ee576746b9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json new file mode 100644 index 0000000000..8fafbd4a86 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_paper_lantern.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json new file mode 100644 index 0000000000..0042b78487 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_large.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_large" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json new file mode 100644 index 0000000000..a219c7855d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_medium.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json new file mode 100644 index 0000000000..6405ebefb2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_pristine_small.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/scroll_pristine_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json new file mode 100644 index 0000000000..583fd0f3c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/scroll_small.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/scroll_pristine_small", + "predicate": { + "hexcasting:ancient": 0.0 + } + }, + { + "model": "hexcasting:item/scroll_ancient_small", + "predicate": { + "hexcasting:ancient": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json new file mode 100644 index 0000000000..146695e299 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/slate_blank", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/slate_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json new file mode 100644 index 0000000000..727a50c807 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_0" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..accf94f2b3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_bricks_small_0" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json new file mode 100644 index 0000000000..749887313c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e20b742c26 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_amethyst_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json new file mode 100644 index 0000000000..df037ffa4b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_blank.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_blank" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json new file mode 100644 index 0000000000..c40e37f12b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_block.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json new file mode 100644 index 0000000000..adc880399e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json new file mode 100644 index 0000000000..4d0555b2c6 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_bricks_small.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json new file mode 100644 index 0000000000..8d6a18fa25 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_pillar.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/slate_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json new file mode 100644 index 0000000000..c2bf7616b8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_tiles.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/deco/slate_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json new file mode 100644 index 0000000000..a17de30bf5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/slate_written.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/slate_written" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json new file mode 100644 index 0000000000..5acb33c2cd --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook.json @@ -0,0 +1,176 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/spellbook", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_0_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/spellbook_1", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_1_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/spellbook_2", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_2_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/spellbook_3", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_3_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/spellbook_4", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_4_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/spellbook_5", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_5_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/spellbook_6", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_6_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/spellbook_7", + "predicate": { + "hexcasting:overlay_layer": 0.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_filled", + "predicate": { + "hexcasting:overlay_layer": 1.0, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/spellbook_7_sealed", + "predicate": { + "hexcasting:overlay_layer": 2.0, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json new file mode 100644 index 0000000000..1727f3854d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_filled", + "layer1": "hexcasting:item/cad/0_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json new file mode 100644 index 0000000000..e580e3ceb5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_0_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_spellbook_sealed", + "layer1": "hexcasting:item/cad/0_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json new file mode 100644 index 0000000000..6b832d7806 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json new file mode 100644 index 0000000000..3ded667934 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_filled", + "layer1": "hexcasting:item/cad/1_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json new file mode 100644 index 0000000000..91c0ed2bc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_1_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_spellbook_sealed", + "layer1": "hexcasting:item/cad/1_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json new file mode 100644 index 0000000000..2d1355b5e9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json new file mode 100644 index 0000000000..9af15dfbbb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_filled", + "layer1": "hexcasting:item/cad/2_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json new file mode 100644 index 0000000000..bd336d2d1a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_2_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_spellbook_sealed", + "layer1": "hexcasting:item/cad/2_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json new file mode 100644 index 0000000000..e18eaf0d3c --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json new file mode 100644 index 0000000000..6b611c62b0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_filled", + "layer1": "hexcasting:item/cad/3_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json new file mode 100644 index 0000000000..25a265b6d3 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_3_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_spellbook_sealed", + "layer1": "hexcasting:item/cad/3_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json new file mode 100644 index 0000000000..38cd5d8fc0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json new file mode 100644 index 0000000000..ebccd06cef --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_filled", + "layer1": "hexcasting:item/cad/4_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json new file mode 100644 index 0000000000..d281078d45 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_4_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_spellbook_sealed", + "layer1": "hexcasting:item/cad/4_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json new file mode 100644 index 0000000000..2f82f7d8a2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json new file mode 100644 index 0000000000..99cc74e732 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_filled", + "layer1": "hexcasting:item/cad/5_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json new file mode 100644 index 0000000000..0a4a822a5b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_5_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/5_spellbook_sealed", + "layer1": "hexcasting:item/cad/5_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json new file mode 100644 index 0000000000..608c5cdd24 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json new file mode 100644 index 0000000000..b47cfbac66 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_filled", + "layer1": "hexcasting:item/cad/6_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json new file mode 100644 index 0000000000..2fa15268d2 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_6_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_spellbook_sealed", + "layer1": "hexcasting:item/cad/6_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json new file mode 100644 index 0000000000..1e7e436978 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json new file mode 100644 index 0000000000..8438b02ac0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_filled", + "layer1": "hexcasting:item/cad/7_spellbook_filled_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json new file mode 100644 index 0000000000..d91512283f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/spellbook_7_sealed.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_spellbook_sealed", + "layer1": "hexcasting:item/cad/7_spellbook_sealed_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json new file mode 100644 index 0000000000..ea1bd514d1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/acacia.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/acacia" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json new file mode 100644 index 0000000000..cb00188989 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/bamboo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/bamboo" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json new file mode 100644 index 0000000000..c56b377279 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/birch.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/birch" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json new file mode 100644 index 0000000000..1fb6398518 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/cherry.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json new file mode 100644 index 0000000000..fa68214ae5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/crimson.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/crimson" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json new file mode 100644 index 0000000000..ef89b141c8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/dark_oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/dark_oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json new file mode 100644 index 0000000000..2ecbbaa4b8 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/edified.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/edified" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json new file mode 100644 index 0000000000..81fc631e34 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/jungle.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/jungle" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json new file mode 100644 index 0000000000..1d055a8943 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mangrove.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mangrove" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json new file mode 100644 index 0000000000..a2a679a5b5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/mindsplice.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/mindsplice" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json new file mode 100644 index 0000000000..c9a35a19c7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/oak.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json new file mode 100644 index 0000000000..16e5858599 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched.json @@ -0,0 +1,28 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/staff/quenched_0", + "predicate": { + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_1", + "predicate": { + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_2", + "predicate": { + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/staff/quenched_3", + "predicate": { + "hexcasting:variant": 3.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json new file mode 100644 index 0000000000..d34dbbfe48 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_0" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json new file mode 100644 index 0000000000..b3b4d49426 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_1" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json new file mode 100644 index 0000000000..9d34fae3ed --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_2" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json new file mode 100644 index 0000000000..61a55746b1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/quenched_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/quenched_3" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json new file mode 100644 index 0000000000..aa60185a6a --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/spruce.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/spruce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json new file mode 100644 index 0000000000..4a157768aa --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/staff/warped.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/staff/warped" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json new file mode 100644 index 0000000000..69e448436d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_log.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json new file mode 100644 index 0000000000..45e5b99e81 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/stripped_edified_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "hexcasting:block/stripped_edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json new file mode 100644 index 0000000000..c5dd346a84 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/sub_sandwich.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/sub_sandwich" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json new file mode 100644 index 0000000000..4a9917224b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot.json @@ -0,0 +1,20 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/thought_knot", + "predicate": { + "hexcasting:written": 0.0 + } + }, + { + "model": "hexcasting:item/thought_knot_written", + "predicate": { + "hexcasting:written": 1.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/thought_knot" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json new file mode 100644 index 0000000000..f5b12c99d9 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/thought_knot_written.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/thought_knot", + "layer1": "hexcasting:item/thought_knot_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json new file mode 100644 index 0000000000..19102d169b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket.json @@ -0,0 +1,120 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "hexcasting:item/trinket", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_0_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 0.0 + } + }, + { + "model": "hexcasting:item/trinket_1", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_1_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 1.0 + } + }, + { + "model": "hexcasting:item/trinket_2", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_2_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 2.0 + } + }, + { + "model": "hexcasting:item/trinket_3", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_3_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 3.0 + } + }, + { + "model": "hexcasting:item/trinket_4", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_4_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 4.0 + } + }, + { + "model": "hexcasting:item/trinket_5", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_5_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 5.0 + } + }, + { + "model": "hexcasting:item/trinket_6", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_6_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 6.0 + } + }, + { + "model": "hexcasting:item/trinket_7", + "predicate": { + "hexcasting:has_patterns": -0.01, + "hexcasting:variant": 7.0 + } + }, + { + "model": "hexcasting:item/trinket_7_filled", + "predicate": { + "hexcasting:has_patterns": 0.99, + "hexcasting:variant": 7.0 + } + } + ], + "textures": { + "layer0": "hexcasting:item/cad/0_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json new file mode 100644 index 0000000000..77da0e72e5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_0_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/0_trinket", + "layer1": "hexcasting:item/cad/0_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json new file mode 100644 index 0000000000..4eb168d7f1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json new file mode 100644 index 0000000000..80a274ce90 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_1_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/1_trinket", + "layer1": "hexcasting:item/cad/1_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json new file mode 100644 index 0000000000..f38c5e5dc4 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json new file mode 100644 index 0000000000..6c60bb9486 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_2_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/2_trinket", + "layer1": "hexcasting:item/cad/2_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json new file mode 100644 index 0000000000..4410e1a4ff --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json new file mode 100644 index 0000000000..4aea4da78e --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_3_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/3_trinket", + "layer1": "hexcasting:item/cad/3_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json new file mode 100644 index 0000000000..87903d7d9b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json new file mode 100644 index 0000000000..9b61c263fb --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_4_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/4_trinket", + "layer1": "hexcasting:item/cad/4_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json new file mode 100644 index 0000000000..7e5d29274b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json new file mode 100644 index 0000000000..0b07194441 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_5_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "hexcasting:item/cad/5_trinket", + "layer1": "hexcasting:item/cad/5_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json new file mode 100644 index 0000000000..6cc75f387d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json new file mode 100644 index 0000000000..bdd007f345 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_6_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/6_trinket", + "layer1": "hexcasting:item/cad/6_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json new file mode 100644 index 0000000000..a2f57e04cc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json new file mode 100644 index 0000000000..e83c8fa4bc --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/trinket_7_filled.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/cad/7_trinket", + "layer1": "hexcasting:item/cad/7_trinket_overlay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json b/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json new file mode 100644 index 0000000000..0b76dd8f8f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/item/uuid_colorizer.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "hexcasting:item/colorizer/uuid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json new file mode 100644 index 0000000000..6a28f12462 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/acacia.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/acacia_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json new file mode 100644 index 0000000000..c0f063051f --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/bamboo.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/bamboo_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json new file mode 100644 index 0000000000..571e454dd7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/birch.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/birch_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json new file mode 100644 index 0000000000..9a663a248b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/cherry.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json new file mode 100644 index 0000000000..059589861d --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/crimson.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/crimson_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json new file mode 100644 index 0000000000..31dc19c0e5 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/dark_oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/dark_oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json new file mode 100644 index 0000000000..903e47409b --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/edified.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/edified_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json new file mode 100644 index 0000000000..06b8e032d0 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/jungle.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/jungle_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json new file mode 100644 index 0000000000..0d75f169c1 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mangrove.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mangrove_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json new file mode 100644 index 0000000000..5c469011ad --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/mindsplice.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/mindsplice_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json new file mode 100644 index 0000000000..8903a42caf --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/oak.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/oak_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json new file mode 100644 index 0000000000..3f3562c473 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/spruce.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/spruce_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json new file mode 100644 index 0000000000..62ab1990d7 --- /dev/null +++ b/Neoforge/src/generated/resources/assets/hexcasting/models/staff/warped.json @@ -0,0 +1,16 @@ +{ + "overrides": [ + { + "model": "hexcasting:item/warped_staff", + "predicate": { + "hexcasting:funny_level": 0.0 + } + }, + { + "model": "hexcasting:item/cherry_staff", + "predicate": { + "hexcasting:funny_level": 2.0 + } + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/create/tags/block/brittle.json b/Neoforge/src/generated/resources/data/create/tags/block/brittle.json new file mode 100644 index 0000000000..fb66be6093 --- /dev/null +++ b/Neoforge/src/generated/resources/data/create/tags/block/brittle.json @@ -0,0 +1,8 @@ +{ + "values": [ + { + "id": "#hexcasting:slate", + "required": false + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json b/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json new file mode 100644 index 0000000000..d936f71efc --- /dev/null +++ b/Neoforge/src/generated/resources/data/forge/tags/item/dusts/amethyst.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/forge/tags/item/gems.json b/Neoforge/src/generated/resources/data/forge/tags/item/gems.json new file mode 100644 index 0000000000..6c55bdef92 --- /dev/null +++ b/Neoforge/src/generated/resources/data/forge/tags/item/gems.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json new file mode 100644 index 0000000000..158691c260 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/aaa_wasteful_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "waste_amt": { + "conditions": { + "health_used": { + "min": 89000 + }, + "media_generated": {} + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:wasteful_cast.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:glistering_melon_slice" + }, + "title": { + "translate": "advancement.hexcasting:wasteful_cast" + } + }, + "requirements": [ + [ + "waste_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json new file mode 100644 index 0000000000..4664381e91 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/aab_big_cast.json @@ -0,0 +1,32 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "cast_amt": { + "conditions": { + "health_used": {}, + "media_generated": { + "min": 6400000 + } + }, + "trigger": "hexcasting:spend_media" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:big_cast.desc" + }, + "icon": { + "count": 1, + "id": "hexcasting:charged_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:big_cast" + } + }, + "requirements": [ + [ + "cast_amt" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json new file mode 100644 index 0000000000..66694b8389 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/creative_unlocker.json @@ -0,0 +1,36 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "has_creative_unlocker": { + "conditions": { + "items": [ + { + "items": "hexcasting:creative_unlocker" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "announce_to_chat": false, + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:creative_unlocker.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:creative_unlocker" + }, + "title": { + "translate": "advancement.hexcasting:creative_unlocker" + } + }, + "requirements": [ + [ + "has_creative_unlocker" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json new file mode 100644 index 0000000000..6beb493204 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/enlightenment.json @@ -0,0 +1,38 @@ +{ + "parent": "hexcasting:opened_eyes", + "criteria": { + "health_used": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:enlightenment.desc" + }, + "frame": "challenge", + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:music_disc_11" + }, + "title": { + "translate": "advancement.hexcasting:enlightenment" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json new file mode 100644 index 0000000000..42c9fd8c5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore.json @@ -0,0 +1,32 @@ +{ + "criteria": { + "used_item": { + "conditions": { + "item": { + "items": "hexcasting:lore_fragment" + } + }, + "trigger": "minecraft:consume_item" + } + }, + "display": { + "background": "hexcasting:textures/block/slate_block.png", + "description": { + "translate": "advancement.hexcasting:lore.desc" + }, + "frame": "goal", + "icon": { + "count": 1, + "id": "hexcasting:akashic_ligature" + }, + "title": { + "translate": "advancement.hexcasting:lore" + } + }, + "requirements": [ + [ + "used_item" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json new file mode 100644 index 0000000000..314c3fa628 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json new file mode 100644 index 0000000000..6f3e2b9d20 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json new file mode 100644 index 0000000000..2147c12792 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom3.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom3" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json new file mode 100644 index 0000000000..1374bfcca4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom4.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom4" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json new file mode 100644 index 0000000000..06c329a939 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/cardamom5.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/cardamom5" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json new file mode 100644 index 0000000000..9d2183c268 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment1.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment1" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json new file mode 100644 index 0000000000..4ac3cadb4f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/experiment2.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/experiment2" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json new file mode 100644 index 0000000000..abef5eb653 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/lore/inventory.json @@ -0,0 +1,25 @@ +{ + "parent": "hexcasting:lore", + "criteria": { + "grant": { + "trigger": "minecraft:impossible" + } + }, + "display": { + "description": "", + "hidden": true, + "icon": { + "count": 1, + "id": "hexcasting:lore_fragment" + }, + "title": { + "translate": "advancement.hexcasting:lore/inventory" + } + }, + "requirements": [ + [ + "grant" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json new file mode 100644 index 0000000000..89583b9134 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/opened_eyes.json @@ -0,0 +1,33 @@ +{ + "parent": "hexcasting:y_u_no_cast_angy", + "criteria": { + "health_used": { + "conditions": { + "health_used": {}, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.0 + } + }, + "trigger": "hexcasting:overcast" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:opened_eyes.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:ender_eye" + }, + "title": { + "translate": "advancement.hexcasting:opened_eyes" + } + }, + "requirements": [ + [ + "health_used" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json new file mode 100644 index 0000000000..d36fd4dc3b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/akashic_record.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_record" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_record" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..18f9ea380f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/budding_amethyst.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:budding_amethyst" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:budding_amethyst" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..cc4c924b54 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_boolean.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_boolean" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_boolean" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..8a43f8bac3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/directrix_redstone.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix_redstone" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix_redstone" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json new file mode 100644 index 0000000000..939dcb6e4e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_look.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_look" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_look" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..c4fc49fd24 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_rightclick.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_rightclick" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_rightclick" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..31d9085f82 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/impetus_storedplayer.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus_storedplayer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus_storedplayer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json new file mode 100644 index 0000000000..6dfe849d9f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/brainsweep/quench_allay.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quench_allay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quench_allay" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json new file mode 100644 index 0000000000..a2abfd4999 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..4cfbe02fd1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_from_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..baefa8193d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_bricks_small_from_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json new file mode 100644 index 0000000000..96746726ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_packing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_packing" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_packing" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..ff10efd290 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_dust_unpacking.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_dust_unpacking" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_dust_unpacking" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json new file mode 100644 index 0000000000..a667163117 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json new file mode 100644 index 0000000000..8ae76d54a6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..ab1194da4a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/ancient_scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json new file mode 100644 index 0000000000..31556a4ca8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json new file mode 100644 index 0000000000..1d09e6fdf8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_fence_gate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_fence_gate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_fence_gate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json new file mode 100644 index 0000000000..ab66016e10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_panel" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_panel" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json new file mode 100644 index 0000000000..f031431d00 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_logs" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_planks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_planks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json new file mode 100644 index 0000000000..317bd1fd11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_slab.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_slab" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_slab" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json new file mode 100644 index 0000000000..069989ca28 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_stairs.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_stairs" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_stairs" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json new file mode 100644 index 0000000000..5179827061 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_tile" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_tile" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json new file mode 100644 index 0000000000..f0aaf4b1fd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_wood" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..c37b71d284 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..ccd1d07d9c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_from_quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..17e80c692e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_bricks_small_from_quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..3c6b16fa0d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json new file mode 100644 index 0000000000..d676daa7f7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/scroll_paper.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..ff2f402508 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..767c693c0a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..bf457b3afb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..ebaa53598d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json new file mode 100644 index 0000000000..770d62ab2b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json new file mode 100644 index 0000000000..b2f96c2797 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_block_from_slates.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_block_from_slates" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_block_from_slates" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json new file mode 100644 index 0000000000..ba654692a5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..0380e1fa54 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_from_slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_from_slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..36c4038b5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_bricks_small_from_slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_bricks_small_from_slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json new file mode 100644 index 0000000000..2b5db656e7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json new file mode 100644 index 0000000000..8013adb566 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:slate_block" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..41dacf55e2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..b3874144f8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..d03fa6e83f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_pillar" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..960f240cc5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/amethyst_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:amethyst_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/amethyst_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/amethyst_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..7ffcabeb6c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..c0d0cdc21a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..d5b967aaa1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:quenched_allay_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/quenched_allay_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/quenched_allay_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..29d6c05539 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..a3c3d9d49d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_bricks_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_bricks_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_bricks_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..a28270ce91 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_pillar.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_pillar" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_pillar" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..50b1e3d144 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stonecutting/slate_tiles.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:slate_blocks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stonecutting/slate_tiles" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stonecutting/slate_tiles" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..4d048fc250 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/building_blocks/stripped_edified_wood.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:stripped_edified_log" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:stripped_edified_wood" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:stripped_edified_wood" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..6ae4bdbbb6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ageing_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper_lantern" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ageing_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ageing_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json new file mode 100644 index 0000000000..91debb7ca5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/amethyst_sconce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:amethyst_sconce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:amethyst_sconce" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f36c1abfc2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/ancient_scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:ancient_scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json new file mode 100644 index 0000000000..1bff0c5ff6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json new file mode 100644 index 0000000000..2dc4651527 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_medium.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_medium" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_medium" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json new file mode 100644 index 0000000000..63884d313e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_paper_lantern.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:scroll_paper" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_paper_lantern" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_paper_lantern" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json new file mode 100644 index 0000000000..2e68c56849 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/scroll_small.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:scroll_small" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:scroll_small" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json new file mode 100644 index 0000000000..551899a3a3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/decorations/slate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:slate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:slate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json new file mode 100644 index 0000000000..bb64c267e5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/food/sub_sandwich.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:sub_sandwich" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:sub_sandwich" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json new file mode 100644 index 0000000000..87bb27b0ac --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/ancient_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:ancient_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:ancient_colorizer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..b032476ae7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/charged.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/charged" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/charged" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..299d8a4550 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/dust.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/dust" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/dust" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..d9f9dfbb25 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/decompose_quenched_shard/shard.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:quenched_allay_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:decompose_quenched_shard/shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:decompose_quenched_shard/shard" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json new file mode 100644 index 0000000000..e04ea0f7b0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/default_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:default_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:default_colorizer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json new file mode 100644 index 0000000000..486da412cd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_black.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_black" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_black" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json new file mode 100644 index 0000000000..c23b00add5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_blue" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json new file mode 100644 index 0000000000..daf49d8674 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_brown.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_brown" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_brown" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json new file mode 100644 index 0000000000..bc159a4f91 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_cyan.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_cyan" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_cyan" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json new file mode 100644 index 0000000000..959c3b871a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_gray" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json new file mode 100644 index 0000000000..ae496bdb93 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_green.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_green" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_green" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..9e660ad5de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_blue.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_blue" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_blue" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..b2b51d665b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_light_gray.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_light_gray" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_light_gray" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json new file mode 100644 index 0000000000..b21321754b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_lime.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_lime" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_lime" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json new file mode 100644 index 0000000000..38097fe636 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_magenta.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_magenta" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_magenta" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json new file mode 100644 index 0000000000..a5e2054cd0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_orange.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_orange" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_orange" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json new file mode 100644 index 0000000000..868366c0a4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_pink.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_pink" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_pink" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json new file mode 100644 index 0000000000..b9d4282404 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_purple.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_purple" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_purple" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json new file mode 100644 index 0000000000..515062d384 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_red.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_red" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_red" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json new file mode 100644 index 0000000000..3fbaf1ba20 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_white.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_white" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_white" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json new file mode 100644 index 0000000000..e707bc9937 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/dye_colorizer_yellow.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:dye_colorizer_yellow" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:dye_colorizer_yellow" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json new file mode 100644 index 0000000000..e07c954cd3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_agender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_agender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_agender" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json new file mode 100644 index 0000000000..8413c66774 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aroace.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aroace" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aroace" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..37604e5939 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_aromantic.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_aromantic" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_aromantic" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json new file mode 100644 index 0000000000..74df9afba7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_asexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_asexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_asexual" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..a3e18ad420 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_bisexual.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_bisexual" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_bisexual" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..e131fc73f1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demiboy.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demiboy" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demiboy" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..a164b59ce6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_demigirl.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_demigirl" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_demigirl" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json new file mode 100644 index 0000000000..59c4f8fdeb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_gay.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_gay" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_gay" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..5c3233fa98 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderfluid.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderfluid" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderfluid" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..fd6f1355ef --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_genderqueer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_genderqueer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_genderqueer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json new file mode 100644 index 0000000000..091329fe3f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_intersex.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_intersex" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_intersex" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..3d4dec1d10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_lesbian.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_lesbian" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_lesbian" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..83c4964af9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_nonbinary.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_nonbinary" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_nonbinary" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json new file mode 100644 index 0000000000..89512b05e1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_plural.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_plural" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_plural" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json new file mode 100644 index 0000000000..70dced6396 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/pride_colorizer_transgender.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:pride_colorizer_transgender" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:pride_colorizer_transgender" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json new file mode 100644 index 0000000000..fbcdbfebf4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/misc/uuid_colorizer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:amethyst_dust" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:uuid_colorizer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:uuid_colorizer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json new file mode 100644 index 0000000000..44a4110650 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_bookshelf.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json new file mode 100644 index 0000000000..b2a6f52851 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/akashic_ligature.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:akashic_ligature" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:akashic_ligature" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json new file mode 100644 index 0000000000..e00a4fdf00 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/directrix/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:directrix/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:directrix/empty" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json new file mode 100644 index 0000000000..b6cd73817c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_button.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_button" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_button" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json new file mode 100644 index 0000000000..72dce77364 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_door.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_door" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_door" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json new file mode 100644 index 0000000000..f207372eeb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_pressure_plate.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_pressure_plate" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_pressure_plate" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json new file mode 100644 index 0000000000..be0fadb15b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/edified_trapdoor.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:edified_planks" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:edified_trapdoor" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:edified_trapdoor" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json new file mode 100644 index 0000000000..0b4aa3256c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/redstone/impetus/empty.json @@ -0,0 +1,35 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "enlightenment": { + "conditions": { + "health_used": { + "min": 0.8 + }, + "media_generated": {}, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "max": 1.0, + "min": 2.2250738585072014E-308 + } + }, + "trigger": "hexcasting:overcast" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:impetus/empty" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "enlightenment" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:impetus/empty" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json new file mode 100644 index 0000000000..b1cb841b3e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/abacus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:abacus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:abacus" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json new file mode 100644 index 0000000000..221cf418c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/artifact.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:artifact" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:artifact" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json new file mode 100644 index 0000000000..5489ea0467 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/cypher.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:cypher" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:cypher" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json new file mode 100644 index 0000000000..4e19de9e5e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json new file mode 100644 index 0000000000..f67d8502aa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/focus_rotated.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:focus_rotated" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:focus_rotated" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json new file mode 100644 index 0000000000..6a24d2b333 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "minecraft:amethyst_shard" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:jeweler_hammer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:jeweler_hammer" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json new file mode 100644 index 0000000000..3411cb2187 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/lens.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:lens" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:lens" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json new file mode 100644 index 0000000000..ef5a492652 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/spellbook.json @@ -0,0 +1,43 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_chorus": { + "conditions": { + "items": [ + { + "items": "minecraft:chorus_fruit" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_focus": { + "conditions": { + "items": [ + { + "items": "hexcasting:focus" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:spellbook" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_focus", + "has_chorus" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:spellbook" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json new file mode 100644 index 0000000000..c1e018b4ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/acacia.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/acacia" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/acacia" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json new file mode 100644 index 0000000000..19094ad2fe --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/bamboo.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/bamboo" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/bamboo" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json new file mode 100644 index 0000000000..ca6c180cfa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/birch.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/birch" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/birch" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json new file mode 100644 index 0000000000..38107a9b52 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/cherry.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/cherry" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/cherry" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json new file mode 100644 index 0000000000..da68b592c5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/crimson.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/crimson" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/crimson" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json new file mode 100644 index 0000000000..da9937e87d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/dark_oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/dark_oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/dark_oak" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json new file mode 100644 index 0000000000..99d19ed3bf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/edified.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/edified" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/edified" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json new file mode 100644 index 0000000000..80fe7c43f6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/jungle.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/jungle" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/jungle" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json new file mode 100644 index 0000000000..0064814593 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mangrove.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mangrove" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mangrove" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json new file mode 100644 index 0000000000..adb60836c1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/mindsplice.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/mindsplice" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/mindsplice" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json new file mode 100644 index 0000000000..d11084b78d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/oak.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/oak" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/oak" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json new file mode 100644 index 0000000000..1ce63b78e3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/quenched.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/quenched" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/quenched" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json new file mode 100644 index 0000000000..cbad54cf88 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/spruce.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/spruce" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/spruce" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json new file mode 100644 index 0000000000..ffff5199c6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/staff/warped.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "hexcasting:charged_amethyst" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:staff/warped" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:staff/warped" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json new file mode 100644 index 0000000000..f50c1673fa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/thought_knot.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:thought_knot" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:thought_knot" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json new file mode 100644 index 0000000000..17c0d69b1f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/recipes/tools/trinket.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "#hexcasting:staves" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "hexcasting:trinket" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "hexcasting:trinket" + ] + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json new file mode 100644 index 0000000000..1b2763aed8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/root.json @@ -0,0 +1,34 @@ +{ + "criteria": { + "has_charged_amethyst": { + "conditions": { + "items": [ + { + "items": "#hexcasting:grants_root_advancement" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "display": { + "background": "minecraft:textures/block/calcite.png", + "description": { + "translate": "advancement.hexcasting:root.desc" + }, + "hidden": true, + "icon": { + "count": 1, + "id": "minecraft:budding_amethyst" + }, + "title": { + "translate": "advancement.hexcasting:root" + } + }, + "requirements": [ + [ + "has_charged_amethyst" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json b/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json new file mode 100644 index 0000000000..00a5641e4d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/advancement/y_u_no_cast_angy.json @@ -0,0 +1,26 @@ +{ + "parent": "hexcasting:root", + "criteria": { + "did_the_thing": { + "trigger": "hexcasting:fail_to_cast_great_spell" + } + }, + "display": { + "description": { + "translate": "advancement.hexcasting:y_u_no_cast_angy.desc" + }, + "icon": { + "count": 1, + "id": "minecraft:blaze_powder" + }, + "title": { + "translate": "advancement.hexcasting:y_u_no_cast_angy" + } + }, + "requirements": [ + [ + "did_the_thing" + ] + ], + "sends_telemetry_event": true +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json b/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json new file mode 100644 index 0000000000..012582c4b2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/damage_type/overcast.json @@ -0,0 +1,5 @@ +{ + "exhaustion": 0.0, + "message_id": "hexcasting.overcast", + "scaling": "when_caused_by_living_non_player" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json new file mode 100644 index 0000000000..70af09ea61 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:amethyst_cluster", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:blocks/amethyst_cluster" + } + ], + "shardDelta": -0.5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json new file mode 100644 index 0000000000..181fbfe7ad --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/hexcasting/random_cypher.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 1.0, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "hexcasting:random_cypher" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..2cde006e3e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..79ede35c14 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..f51d2dabf0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..78250990ed --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..b9e7041dbc --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..5cb215e05e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json new file mode 100644 index 0000000000..6dfe6d03d3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/cypher/minecraft/chests/stronghold_corridor.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_cyphers", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_corridor" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..c636a2f73a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..215f625f7d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..ad1b0666d8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f55d8f4cc0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json new file mode 100644 index 0000000000..3aaf4b8498 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_desert_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_desert_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json new file mode 100644 index 0000000000..93d27d6661 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_plains_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_plains_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json new file mode 100644 index 0000000000..bb224944b7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_savanna_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_savanna_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json new file mode 100644 index 0000000000..ec4f567a6e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_snowy_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_snowy_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json new file mode 100644 index 0000000000..d2132c79bf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/village/village_taiga_house.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_taiga_house" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..be9d6b6d12 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/lore/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_lore", + "chance": 0.4, + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json new file mode 100644 index 0000000000..9e7e8571ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/hexcasting/random_scroll.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "hexcasting:random_scroll" + } + ], + "countRange": -1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json new file mode 100644 index 0000000000..27d1e1ba46 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/abandoned_mineshaft.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/abandoned_mineshaft" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json new file mode 100644 index 0000000000..d4d94d6652 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/ancient_city.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/ancient_city" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json new file mode 100644 index 0000000000..17372d9896 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_other.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_other" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json new file mode 100644 index 0000000000..ff8851c233 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/bastion_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/bastion_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json new file mode 100644 index 0000000000..b91f49fb8a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/desert_pyramid.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/desert_pyramid" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json new file mode 100644 index 0000000000..f5371dd519 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/end_city_treasure.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/end_city_treasure" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json new file mode 100644 index 0000000000..c1bf948ade --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/jungle_temple.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/jungle_temple" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json new file mode 100644 index 0000000000..68725eddce --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/nether_bridge.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/nether_bridge" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json new file mode 100644 index 0000000000..b06f4d95a6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/pillager_outpost.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/pillager_outpost" + } + ], + "countRange": 4 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json new file mode 100644 index 0000000000..3c7b528cda --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/shipwreck_map.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/shipwreck_map" + } + ], + "countRange": 3 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json new file mode 100644 index 0000000000..141eebbe09 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/simple_dungeon.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/simple_dungeon" + } + ], + "countRange": 1 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json new file mode 100644 index 0000000000..f08c93cb45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/stronghold_library.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/stronghold_library" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json new file mode 100644 index 0000000000..a59db105dd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/village/village_cartographer.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/village/village_cartographer" + } + ], + "countRange": 2 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json new file mode 100644 index 0000000000..cc97ecc7c2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_modifiers/scroll/minecraft/chests/woodland_mansion.json @@ -0,0 +1,10 @@ +{ + "type": "hexcasting:inject_scrolls", + "conditions": [ + { + "condition": "neoforge:loot_table_id", + "loot_table_id": "minecraft:chests/woodland_mansion" + } + ], + "countRange": 5 +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json new file mode 100644 index 0000000000..78a36f62ec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_bookshelf.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_bookshelf" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_bookshelf" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json new file mode 100644 index 0000000000..02be275bc1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_ligature.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_ligature" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_ligature" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json new file mode 100644 index 0000000000..5c93f81681 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/akashic_record.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_record" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/akashic_record" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json new file mode 100644 index 0000000000..4c60a77364 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json new file mode 100644 index 0000000000..3d39f82987 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json new file mode 100644 index 0000000000..7c054a0aab --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_dust_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_dust_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json new file mode 100644 index 0000000000..911c281497 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json new file mode 100644 index 0000000000..2eeb112461 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json new file mode 100644 index 0000000000..e2c38fe09e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_sconce.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_sconce" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_sconce" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json new file mode 100644 index 0000000000..13010296ca --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json new file mode 100644 index 0000000000..2bb2887920 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..f2ea006a03 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/ancient_scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:ancient_scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/ancient_scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json new file mode 100644 index 0000000000..d2bfc7c956 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/aventurine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:aventurine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/aventurine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json new file mode 100644 index 0000000000..88f319d753 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/citrine_edified_leaves.json @@ -0,0 +1,41 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:any_of", + "terms": [ + { + "ability": "shears_dig", + "condition": "neoforge:can_item_perform_ability" + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ] + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:citrine_edified_leaves" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/citrine_edified_leaves" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json new file mode 100644 index 0000000000..7510be752b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/boolean.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/boolean" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/boolean" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json new file mode 100644 index 0000000000..056282de33 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json new file mode 100644 index 0000000000..b130eb19de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/directrix/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:directrix/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/directrix/redstone" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json new file mode 100644 index 0000000000..a24172124e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_button.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_button" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_button" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json new file mode 100644 index 0000000000..942a65484f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_door.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "block": "hexcasting:edified_door", + "condition": "minecraft:block_state_property", + "properties": { + "half": "lower" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_door" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_door" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json new file mode 100644 index 0000000000..f45eea22be --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json new file mode 100644 index 0000000000..01cbf2a5e1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_fence_gate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_fence_gate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_fence_gate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json new file mode 100644 index 0000000000..396a3fcb45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json new file mode 100644 index 0000000000..d6c0759bfa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_amethyst.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_amethyst" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_amethyst" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json new file mode 100644 index 0000000000..31892f2177 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_aventurine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_aventurine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_aventurine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json new file mode 100644 index 0000000000..21ac1cd0fb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_citrine.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_citrine" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_citrine" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json new file mode 100644 index 0000000000..f9c2c33343 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_log_purple.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_log_purple" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_log_purple" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json new file mode 100644 index 0000000000..83cb1f1b59 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_panel.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_panel" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_panel" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json new file mode 100644 index 0000000000..5f1b5f7280 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_planks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_planks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_planks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json new file mode 100644 index 0000000000..d733b30a49 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_pressure_plate.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_pressure_plate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_pressure_plate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json new file mode 100644 index 0000000000..0bdc00f6b3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_slab.json @@ -0,0 +1,34 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_slab" + } + ], + "functions": [ + { + "add": false, + "conditions": [ + { + "block": "hexcasting:edified_slab", + "condition": "minecraft:block_state_property", + "properties": { + "type": "double" + } + } + ], + "count": 2.0, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_slab" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json new file mode 100644 index 0000000000..7cb6566434 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_stairs.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_stairs" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_stairs" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json new file mode 100644 index 0000000000..dbc6bd1426 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_tile.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_tile" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_tile" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json new file mode 100644 index 0000000000..f76ea0437f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_trapdoor.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_trapdoor" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_trapdoor" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json new file mode 100644 index 0000000000..2e1faee977 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json new file mode 100644 index 0000000000..67fe1185ac --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/empty.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/empty" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/empty" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json new file mode 100644 index 0000000000..87f6f0ef09 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/look.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/look" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/look" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json new file mode 100644 index 0000000000..1635ee4207 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/redstone.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/redstone" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/redstone" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json new file mode 100644 index 0000000000..37f1e9df10 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/impetus/rightclick.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:impetus/rightclick" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/impetus/rightclick" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json new file mode 100644 index 0000000000..09fe8b6fd3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay.json @@ -0,0 +1,69 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + ], + "name": "hexcasting:quenched_allay" + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 2.0 + }, + "function": "minecraft:set_count" + }, + { + "add": true, + "conditions": [ + { + "chances": [ + 0.25, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "name": "hexcasting:quenched_allay_shard" + } + ] + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json new file mode 100644 index 0000000000..eb1a87b224 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..879089b6d4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json new file mode 100644 index 0000000000..0c81157382 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/quenched_allay_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:quenched_allay_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/quenched_allay_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json new file mode 100644 index 0000000000..8c3d628108 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json new file mode 100644 index 0000000000..ccea471c66 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/scroll_paper_lantern.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:scroll_paper_lantern" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/scroll_paper_lantern" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json new file mode 100644 index 0000000000..eeb8f5c955 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:copy_components", + "include": [ + "hexcasting:pattern" + ], + "source": "block_entity" + } + ], + "name": "hexcasting:slate" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6d9ea8d1a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..6f7cfb5825 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json new file mode 100644 index 0000000000..96dd26f7fb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json new file mode 100644 index 0000000000..e91ebad3ce --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_amethyst_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_amethyst_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_amethyst_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json new file mode 100644 index 0000000000..d136fe7460 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_block.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_block" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_block" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json new file mode 100644 index 0000000000..d42593f8d5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json new file mode 100644 index 0000000000..f77a608dec --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_bricks_small.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_bricks_small" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_bricks_small" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json new file mode 100644 index 0000000000..060b60ebf9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_pillar.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_pillar" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_pillar" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json new file mode 100644 index 0000000000..81cda1a13a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/slate_tiles.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:slate_tiles" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/slate_tiles" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json new file mode 100644 index 0000000000..7dab40f3a1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_log.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_log" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_log" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json new file mode 100644 index 0000000000..60b009f032 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/blocks/stripped_edified_wood.json @@ -0,0 +1,15 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:stripped_edified_wood" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:blocks/stripped_edified_wood" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json b/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json new file mode 100644 index 0000000000..e87bc89af2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/loot_table/inject/amethyst_cluster.json @@ -0,0 +1,211 @@ +{ + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 4.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "enchantment": "minecraft:fortune", + "formula": "minecraft:ore_drops", + "function": "minecraft:apply_bonus" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:amethyst_dust" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 0.0 + }, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + }, + { + "chances": [ + 0.25, + 0.35, + 0.5, + 0.75, + 1.0 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "predicates": { + "minecraft:enchantments": [ + { + "enchantments": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + } + }, + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:match_tool", + "predicate": { + "items": "#minecraft:cluster_max_harvestables" + } + } + }, + { + "chance": 0.125, + "condition": "minecraft:random_chance" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:charged_amethyst" + } + ], + "functions": [ + { + "add": false, + "count": 1.0, + "function": "minecraft:set_count" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "hexcasting:inject/amethyst_cluster" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json new file mode 100644 index 0000000000..76d393b033 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/abacus.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "minecraft:planks" + } + }, + "pattern": [ + "WAW", + "SAS", + "WAW" + ], + "result": { + "count": 1, + "id": "hexcasting:abacus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json new file mode 100644 index 0000000000..54de4e69be --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ageing_scroll_paper_lantern.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + }, + { + "item": "hexcasting:scroll_paper_lantern" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json new file mode 100644 index 0000000000..055ac48308 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_bookshelf.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "C": { + "item": "minecraft:book" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "result": { + "count": 1, + "id": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json new file mode 100644 index 0000000000..bbcc3f83e7 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/akashic_ligature.json @@ -0,0 +1,30 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "1": { + "item": "hexcasting:amethyst_dust" + }, + "2": { + "item": "minecraft:amethyst_shard" + }, + "3": { + "item": "hexcasting:charged_amethyst" + }, + "L": { + "tag": "hexcasting:edified_logs" + }, + "P": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "LPL", + "123", + "LPL" + ], + "result": { + "count": 4, + "id": "hexcasting:akashic_ligature" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json new file mode 100644 index 0000000000..2295ff6e47 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json new file mode 100644 index 0000000000..40fcca35bb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_from_amethyst_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json new file mode 100644 index 0000000000..ee790bd86e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_bricks_small_from_amethyst_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json new file mode 100644 index 0000000000..1da337229f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_packing.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "X": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "XX", + "XX" + ], + "result": { + "count": 1, + "id": "hexcasting:amethyst_dust_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json new file mode 100644 index 0000000000..db42cb3711 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_dust_unpacking.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust_block" + } + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json new file mode 100644 index 0000000000..80134fcf5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "minecraft:amethyst_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json new file mode 100644 index 0000000000..1ece2856f0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_sconce.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "tag": "c:ingots/copper" + }, + "T": { + "item": "hexcasting:charged_amethyst" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_sconce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json new file mode 100644 index 0000000000..45aa2f2b82 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/amethyst_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:amethyst_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json new file mode 100644 index 0000000000..94e370b637 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:copper_ingot" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_colorizer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json new file mode 100644 index 0000000000..33db9b82c9 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "c:dyes/brown" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + }, + { + "item": "hexcasting:scroll_paper" + } + ], + "result": { + "count": 8, + "id": "hexcasting:ancient_scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json new file mode 100644 index 0000000000..d99d9ba91b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/ancient_scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:ancient_scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:ancient_scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json new file mode 100644 index 0000000000..a03e30a2a8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/artifact.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "D": { + "tag": "minecraft:creeper_drop_music_discs" + }, + "F": { + "tag": "c:ingots/gold" + } + }, + "pattern": [ + " F ", + "FAF", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:artifact" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json new file mode 100644 index 0000000000..750ad2dcfe --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/akashic_record.json @@ -0,0 +1,16 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:akashic_ligature" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 5, + "profession": "minecraft:librarian" + }, + "result": { + "Name": "hexcasting:akashic_record" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json new file mode 100644 index 0000000000..0532b2e5ed --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/budding_amethyst.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 3 + }, + "result": { + "Name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json new file mode 100644 index 0000000000..5e97ada05f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_boolean.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:shepherd" + }, + "result": { + "Name": "hexcasting:directrix/boolean", + "Properties": { + "energized": "false", + "facing": "north", + "state": "neither" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json new file mode 100644 index 0000000000..afb314d043 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/directrix_redstone.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:directrix/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 1, + "profession": "minecraft:mason" + }, + "result": { + "Name": "hexcasting:directrix/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "false" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json new file mode 100644 index 0000000000..7d77364f78 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_look.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:fletcher" + }, + "result": { + "Name": "hexcasting:impetus/look", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json new file mode 100644 index 0000000000..02fbae2538 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_rightclick.json @@ -0,0 +1,20 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:toolsmith" + }, + "result": { + "Name": "hexcasting:impetus/rightclick", + "Properties": { + "energized": "false", + "facing": "north" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json new file mode 100644 index 0000000000..f79dca1d11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/impetus_storedplayer.json @@ -0,0 +1,21 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "hexcasting:impetus/empty" + }, + "cost": 1000000, + "entityIn": { + "type": "hexcasting:villager", + "minLevel": 2, + "profession": "minecraft:cleric" + }, + "result": { + "Name": "hexcasting:impetus/redstone", + "Properties": { + "energized": "false", + "facing": "north", + "powered": "true" + } + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json new file mode 100644 index 0000000000..076b4e0745 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/brainsweep/quench_allay.json @@ -0,0 +1,15 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "hexcasting:block", + "block": "minecraft:amethyst_block" + }, + "cost": 100000, + "entityIn": { + "type": "hexcasting:entity_type", + "entityType": "minecraft:allay" + }, + "result": { + "Name": "hexcasting:quenched_allay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json new file mode 100644 index 0000000000..80e1837536 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/cypher.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/copper" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:cypher" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json new file mode 100644 index 0000000000..4d9e9902e8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/charged.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:charged_amethyst" + } + ], + "result": { + "count": 4, + "id": "hexcasting:charged_amethyst" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json new file mode 100644 index 0000000000..5023760773 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/dust.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "hexcasting:amethyst_dust" + } + ], + "result": { + "count": 31, + "id": "hexcasting:amethyst_dust" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json new file mode 100644 index 0000000000..e441d9bf5f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/decompose_quenched_shard/shard.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_shard" + }, + { + "item": "minecraft:amethyst_shard" + } + ], + "result": { + "count": 7, + "id": "minecraft:amethyst_shard" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json new file mode 100644 index 0000000000..3f95041537 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/default_colorizer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:default_colorizer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json new file mode 100644 index 0000000000..986fa97d99 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/directrix/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "C": { + "item": "minecraft:comparator" + }, + "O": { + "item": "minecraft:observer" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "CSS", + "OAO", + "SSC" + ], + "result": { + "count": 1, + "id": "hexcasting:directrix/empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json new file mode 100644 index 0000000000..43dcd86862 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_black.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:black_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_black" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json new file mode 100644 index 0000000000..b9cd3b99c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json new file mode 100644 index 0000000000..f02b87049c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_brown.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:brown_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_brown" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json new file mode 100644 index 0000000000..93380132c6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_cyan.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:cyan_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_cyan" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json new file mode 100644 index 0000000000..c803427d5a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json new file mode 100644 index 0000000000..e592b36cca --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_green.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:green_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_green" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json new file mode 100644 index 0000000000..d8eb9b5986 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_blue.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_blue_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_blue" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json new file mode 100644 index 0000000000..e6efc2af9a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_light_gray.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:light_gray_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_light_gray" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json new file mode 100644 index 0000000000..645db81176 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_lime.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:lime_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_lime" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json new file mode 100644 index 0000000000..9476c0a098 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_magenta.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:magenta_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_magenta" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json new file mode 100644 index 0000000000..f6f815b95f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_orange.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:orange_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_orange" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json new file mode 100644 index 0000000000..065db19c23 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_pink.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:pink_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_pink" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json new file mode 100644 index 0000000000..85dab6119e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_purple.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:purple_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_purple" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json new file mode 100644 index 0000000000..8acba0fc1a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_red.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:red_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_red" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json new file mode 100644 index 0000000000..d76ee9ba69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_white.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:white_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_white" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json new file mode 100644 index 0000000000..35ffbdd8df --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dye_colorizer_yellow.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:yellow_dye" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:dye_colorizer_yellow" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json new file mode 100644 index 0000000000..28edc09f6d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_focus.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_focus", + "category": "misc" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json new file mode 100644 index 0000000000..5bf703566d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/dynamicseal_spellbook.json @@ -0,0 +1,4 @@ +{ + "type": "hexcasting:seal_spellbook", + "category": "misc" +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json new file mode 100644 index 0000000000..10ad25b4aa --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_button.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "redstone", + "ingredients": [ + { + "tag": "hexcasting:edified_planks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:edified_button" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json new file mode 100644 index 0000000000..6ff2941615 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_door.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW", + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_door" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json new file mode 100644 index 0000000000..f1a7c7ec45 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WSW", + "WSW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_fence" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json new file mode 100644 index 0000000000..a38d45ca38 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "SWS", + "SWS" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_fence_gate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json new file mode 100644 index 0000000000..0baf420f31 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_panel.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "tag": "hexcasting:edified_planks" + }, + "D": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:edified_panel" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json new file mode 100644 index 0000000000..7ea641db71 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_planks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "tag": "hexcasting:edified_logs" + } + ], + "result": { + "count": 4, + "id": "hexcasting:edified_planks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json new file mode 100644 index 0000000000..fb80df82d1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_pressure_plate.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW" + ], + "result": { + "count": 1, + "id": "hexcasting:edified_pressure_plate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json new file mode 100644 index 0000000000..efda8df52a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_slab.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_slab" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json new file mode 100644 index 0000000000..ca2e03f9c3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_stairs.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "W ", + "WW ", + "WWW" + ], + "result": { + "count": 4, + "id": "hexcasting:edified_stairs" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json new file mode 100644 index 0000000000..bfca8c3437 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_tile.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WW ", + "W W", + " WW" + ], + "result": { + "count": 6, + "id": "hexcasting:edified_tile" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json new file mode 100644 index 0000000000..89928fcc73 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_trapdoor.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "W": { + "tag": "hexcasting:edified_planks" + } + }, + "pattern": [ + "WWW", + "WWW" + ], + "result": { + "count": 2, + "id": "hexcasting:edified_trapdoor" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json new file mode 100644 index 0000000000..4e95e0bdc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:edified_wood" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json new file mode 100644 index 0000000000..ff88244378 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GLG", + "PAP", + "GLG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json new file mode 100644 index 0000000000..62aba7f62e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/focus_rotated.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "G": { + "tag": "c:dusts/glowstone" + }, + "L": { + "tag": "c:leathers" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "GPG", + "LAL", + "GPG" + ], + "result": { + "count": 1, + "id": "hexcasting:focus" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json new file mode 100644 index 0000000000..b5d3b9fd5c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/impetus/empty.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:iron_bars" + }, + "P": { + "item": "minecraft:purpur_block" + }, + "S": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "PSS", + "BAB", + "SSP" + ], + "result": { + "count": 1, + "id": "hexcasting:impetus/empty" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json new file mode 100644 index 0000000000..fef55bcb4b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/jeweler_hammer.json @@ -0,0 +1,32 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "I": { + "tag": "c:ingots/iron" + }, + "N": { + "tag": "c:nuggets/iron" + }, + "S": [ + { + "item": "minecraft:stick" + }, + { + "tag": "forge:rods/wooden" + } + ] + }, + "pattern": [ + "IAN", + " S ", + " S " + ], + "result": { + "count": 1, + "id": "hexcasting:jeweler_hammer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json new file mode 100644 index 0000000000..d7e33ac36b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/lens.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "item": "minecraft:glass" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:lens" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json new file mode 100644 index 0000000000..d5401c0952 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_agender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_agender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json new file mode 100644 index 0000000000..25c32f412c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aroace.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat_seeds" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aroace" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json new file mode 100644 index 0000000000..ab923e9b61 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_aromantic.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:arrow" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_aromantic" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json new file mode 100644 index 0000000000..c41a3223de --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_asexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:bread" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_asexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json new file mode 100644 index 0000000000..157dff5b64 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_bisexual.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:wheat" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_bisexual" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json new file mode 100644 index 0000000000..c79d6fd805 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demiboy.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_iron" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demiboy" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json new file mode 100644 index 0000000000..4a87fb83dd --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_demigirl.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:raw_copper" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_demigirl" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json new file mode 100644 index 0000000000..3922bf5fa1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_gay.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:stone_brick_wall" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_gay" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json new file mode 100644 index 0000000000..788be0d074 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderfluid.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:water_bucket" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderfluid" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json new file mode 100644 index 0000000000..db56478852 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_genderqueer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:glass_bottle" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_genderqueer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json new file mode 100644 index 0000000000..0cf8605f6e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_intersex.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:azalea" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_intersex" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json new file mode 100644 index 0000000000..60faeb98cb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_lesbian.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:honeycomb" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_lesbian" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json new file mode 100644 index 0000000000..1592908ece --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_nonbinary.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:moss_block" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_nonbinary" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json new file mode 100644 index 0000000000..662aaf38fc --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_plural.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:repeater" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_plural" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json new file mode 100644 index 0000000000..cce2b91ea8 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/pride_colorizer_transgender.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "minecraft:egg" + }, + "D": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + " D ", + "DCD", + " D " + ], + "result": { + "count": 1, + "id": "hexcasting:pride_colorizer_transgender" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json new file mode 100644 index 0000000000..8f4ef39565 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json new file mode 100644 index 0000000000..6c3bb75415 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_from_quenched_allay_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json new file mode 100644 index 0000000000..436404d386 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_bricks_small_from_quenched_allay_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:quenched_allay_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json new file mode 100644 index 0000000000..0b9cf2c86e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/quenched_allay_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:quenched_allay_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json new file mode 100644 index 0000000000..cf7a4fcfb1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + "PPA", + "PPP", + "PPP" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json new file mode 100644 index 0000000000..85b2a98f34 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_medium.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "PP ", + "PP " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_medium" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json new file mode 100644 index 0000000000..1feb96a530 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:paper" + }, + "D": { + "item": "minecraft:paper" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:scroll_paper" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json new file mode 100644 index 0000000000..5434f4c7f1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_paper_lantern.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "B": { + "item": "minecraft:torch" + }, + "T": { + "item": "hexcasting:scroll_paper" + } + }, + "pattern": [ + "T", + "B" + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_paper_lantern" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json new file mode 100644 index 0000000000..c64a3e544a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/scroll_small.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "P": { + "item": "minecraft:paper" + } + }, + "pattern": [ + " A", + "P " + ], + "result": { + "count": 1, + "id": "hexcasting:scroll_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json new file mode 100644 index 0000000000..eb718972c2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "hexcasting:amethyst_dust" + }, + "S": { + "item": "minecraft:deepslate" + } + }, + "pattern": [ + " A ", + "SSS" + ], + "result": { + "count": 6, + "id": "hexcasting:slate" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json new file mode 100644 index 0000000000..f6464485cb --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + }, + { + "item": "hexcasting:amethyst_bricks" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json new file mode 100644 index 0000000000..d033fedb80 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_bricks_small.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + }, + { + "item": "hexcasting:amethyst_bricks_small" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json new file mode 100644 index 0000000000..1b54fb5117 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_pillar.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_pillar" + }, + { + "item": "hexcasting:amethyst_pillar" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_pillar" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json new file mode 100644 index 0000000000..849bbf1979 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_amethyst_tiles.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_tiles" + }, + { + "item": "hexcasting:amethyst_tiles" + } + ], + "result": { + "count": 2, + "id": "hexcasting:slate_amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json new file mode 100644 index 0000000000..975fea26a0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "C": { + "item": "minecraft:deepslate" + }, + "D": { + "item": "minecraft:deepslate" + }, + "I": { + "item": "hexcasting:amethyst_dust" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 8, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json new file mode 100644 index 0000000000..92bf412fdf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_block_from_slates.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "S": { + "item": "hexcasting:slate" + } + }, + "pattern": [ + "S", + "S" + ], + "result": { + "count": 1, + "id": "hexcasting:slate_block" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json new file mode 100644 index 0000000000..d9b600df2c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json new file mode 100644 index 0000000000..382f303f25 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_from_slate_bricks_small.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks_small" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json new file mode 100644 index 0000000000..33593cd656 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_bricks_small_from_slate_bricks.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "building", + "ingredients": [ + { + "item": "hexcasting:slate_bricks" + } + ], + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json new file mode 100644 index 0000000000..fcbae2e388 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_pillar.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_block" + } + }, + "pattern": [ + "#", + "#" + ], + "result": { + "count": 2, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json new file mode 100644 index 0000000000..797344b40d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/slate_tiles.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": { + "item": "hexcasting:slate_bricks" + } + }, + "pattern": [ + "##", + "##" + ], + "result": { + "count": 4, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json new file mode 100644 index 0000000000..d9e9250926 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/spellbook.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "B": { + "item": "minecraft:writable_book" + }, + "F": { + "item": "minecraft:chorus_fruit" + }, + "N": { + "tag": "c:nuggets/gold" + } + }, + "pattern": [ + "NBA", + "NFA", + "NBA" + ], + "result": { + "count": 1, + "id": "hexcasting:spellbook" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json new file mode 100644 index 0000000000..a5e01a9c9a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/acacia.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:acacia_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/acacia" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json new file mode 100644 index 0000000000..8c648a860c --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/bamboo.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:bamboo_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/bamboo" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json new file mode 100644 index 0000000000..2cee68c976 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/birch.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:birch_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/birch" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json new file mode 100644 index 0000000000..fb19b26271 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/cherry.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:cherry_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/cherry" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json new file mode 100644 index 0000000000..6f8b4dd09e --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/crimson.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:crimson_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/crimson" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json new file mode 100644 index 0000000000..b4a9aea823 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/dark_oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:dark_oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/dark_oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json new file mode 100644 index 0000000000..29378f8085 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/edified.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:edified_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/edified" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json new file mode 100644 index 0000000000..a3b382cf11 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/jungle.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:jungle_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/jungle" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json new file mode 100644 index 0000000000..2ad01c0d69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mangrove.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:mangrove_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mangrove" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json new file mode 100644 index 0000000000..41c9e8abb0 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/mindsplice.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "tag": "hexcasting:brainswept_circle_components" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/mindsplice" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json new file mode 100644 index 0000000000..75d6d9daab --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/oak.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:oak_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/oak" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json new file mode 100644 index 0000000000..91fd1fc452 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/quenched.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "hexcasting:quenched_allay_shard" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/quenched" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json new file mode 100644 index 0000000000..0ab7166a60 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/spruce.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:spruce_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/spruce" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json new file mode 100644 index 0000000000..8a71b96aaf --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/staff/warped.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "A": { + "item": "hexcasting:charged_amethyst" + }, + "S": { + "item": "minecraft:stick" + }, + "W": { + "item": "minecraft:warped_planks" + } + }, + "pattern": [ + " SA", + " WS", + "S " + ], + "result": { + "count": 1, + "id": "hexcasting:staff/warped" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json new file mode 100644 index 0000000000..351fac3275 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json new file mode 100644 index 0000000000..be2ad51853 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json new file mode 100644 index 0000000000..9545010b63 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_pillar" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json new file mode 100644 index 0000000000..51ae3111d5 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/amethyst_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:amethyst_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:amethyst_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json new file mode 100644 index 0000000000..3ebba913be --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json new file mode 100644 index 0000000000..9695781699 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json new file mode 100644 index 0000000000..e4c2cb2691 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/quenched_allay_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:quenched_allay_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:quenched_allay_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json new file mode 100644 index 0000000000..3684c61863 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json new file mode 100644 index 0000000000..d37da58373 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_bricks_small.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_bricks_small" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json new file mode 100644 index 0000000000..7e945de1da --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_pillar.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_pillar" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json new file mode 100644 index 0000000000..2d97ad9e40 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stonecutting/slate_tiles.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:stonecutting", + "ingredient": { + "tag": "hexcasting:slate_blocks" + }, + "result": { + "count": 1, + "id": "hexcasting:slate_tiles" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json new file mode 100644 index 0000000000..0ccb5ae8e2 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/stripped_edified_wood.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "W": { + "item": "hexcasting:stripped_edified_log" + } + }, + "pattern": [ + "WW", + "WW" + ], + "result": { + "count": 3, + "id": "hexcasting:stripped_edified_wood" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json new file mode 100644 index 0000000000..82a511fde4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/sub_sandwich.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:amethyst_shard" + }, + "B": { + "item": "minecraft:bread" + }, + "C": { + "item": "minecraft:cooked_beef" + }, + "S": { + "item": "minecraft:stick" + } + }, + "pattern": [ + " SA", + " C ", + " B " + ], + "result": { + "count": 1, + "id": "hexcasting:sub_sandwich" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json new file mode 100644 index 0000000000..d89ad83310 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/thought_knot.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "equipment", + "ingredients": [ + { + "item": "hexcasting:amethyst_dust" + }, + { + "item": "minecraft:string" + } + ], + "result": { + "count": 1, + "id": "hexcasting:thought_knot" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json new file mode 100644 index 0000000000..f0c905012a --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/trinket.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "key": { + "C": { + "tag": "c:ingots/iron" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + " C ", + "CIC", + " C " + ], + "result": { + "count": 1, + "id": "hexcasting:trinket" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json b/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json new file mode 100644 index 0000000000..235a2aff68 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/recipe/uuid_colorizer.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "C": { + "item": "hexcasting:amethyst_dust" + }, + "D": { + "item": "hexcasting:amethyst_dust" + }, + "I": { + "item": "minecraft:amethyst_shard" + } + }, + "pattern": [ + "DCD", + "CIC", + "DCD" + ], + "result": { + "count": 1, + "id": "hexcasting:uuid_colorizer" + } +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json new file mode 100644 index 0000000000..7fc52a816b --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/cheap_to_break_block.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:conjured_block", + "hexcasting:conjured_light" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json b/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json new file mode 100644 index 0000000000..0f2bcab34f --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/block/water_plants.json @@ -0,0 +1,8 @@ +{ + "values": [ + "minecraft:kelp", + "minecraft:kelp_plant", + "minecraft:seagrass", + "minecraft:tall_seagrass" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/can_start_enlighten.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/per_world_pattern.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json new file mode 100644 index 0000000000..3113294d13 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/hexcasting/action/requires_enlightenment.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:lightning", + "hexcasting:flight", + "hexcasting:create_lava", + "hexcasting:teleport/great", + "hexcasting:sentinel/create/great", + "hexcasting:dispel_rain", + "hexcasting:summon_rain", + "hexcasting:brainsweep", + "hexcasting:craft/battery", + "hexcasting:potion/regeneration", + "hexcasting:potion/night_vision", + "hexcasting:potion/absorption", + "hexcasting:potion/haste", + "hexcasting:potion/strength" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json new file mode 100644 index 0000000000..5710e98698 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/amethyst_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "minecraft:amethyst_block", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_pillar" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json new file mode 100644 index 0000000000..aa71f4b195 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/brainswept_circle_components.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#hexcasting:impeti", + "#hexcasting:directrices" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json new file mode 100644 index 0000000000..824259f178 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/directrices.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/edified_planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json new file mode 100644 index 0000000000..1f7070a707 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/grants_root_advancement.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:amethyst_dust", + "minecraft:amethyst_shard", + "hexcasting:charged_amethyst", + "hexcasting:creative_unlocker" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json new file mode 100644 index 0000000000..358990d5b4 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/impeti.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:impetus/look", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/redstone" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json new file mode 100644 index 0000000000..52ac4c0c96 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/phial_base.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:glass_bottle" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json new file mode 100644 index 0000000000..2baec8591d --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/quenched_allay_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small", + "hexcasting:quenched_allay_tiles" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json new file mode 100644 index 0000000000..674a370049 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/seal_materials.json @@ -0,0 +1,5 @@ +{ + "values": [ + "minecraft:honeycomb" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json new file mode 100644 index 0000000000..fcebe17924 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/slate_blocks.json @@ -0,0 +1,9 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_tiles", + "hexcasting:slate_pillar" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json b/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json new file mode 100644 index 0000000000..29f4595c62 --- /dev/null +++ b/Neoforge/src/generated/resources/data/hexcasting/tags/item/staves.json @@ -0,0 +1,18 @@ +{ + "values": [ + "hexcasting:staff/edified", + "hexcasting:staff/oak", + "hexcasting:staff/spruce", + "hexcasting:staff/birch", + "hexcasting:staff/jungle", + "hexcasting:staff/acacia", + "hexcasting:staff/dark_oak", + "hexcasting:staff/crimson", + "hexcasting:staff/warped", + "hexcasting:staff/mangrove", + "hexcasting:staff/cherry", + "hexcasting:staff/bamboo", + "hexcasting:staff/quenched", + "hexcasting:staff/mindsplice" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json new file mode 100644 index 0000000000..7a23dc1ec1 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/crystal_sound_blocks.json @@ -0,0 +1,8 @@ +{ + "values": [ + "hexcasting:conjured_light", + "hexcasting:conjured_block", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_sconce" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/fence_gates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json new file mode 100644 index 0000000000..269de59e0a --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/fences.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json new file mode 100644 index 0000000000..0d6037e186 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/axe.json @@ -0,0 +1,25 @@ +{ + "values": [ + "hexcasting:akashic_record", + "hexcasting:akashic_bookshelf", + "hexcasting:akashic_ligature", + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood", + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile", + "hexcasting:edified_door", + "hexcasting:edified_trapdoor", + "hexcasting:edified_slab", + "hexcasting:edified_button", + "hexcasting:edified_stairs", + "hexcasting:edified_fence", + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/hoe.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000000..a8b1c2eb67 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,30 @@ +{ + "values": [ + "hexcasting:slate_block", + "hexcasting:slate_tiles", + "hexcasting:slate_bricks", + "hexcasting:slate_bricks_small", + "hexcasting:slate_pillar", + "hexcasting:slate", + "hexcasting:directrix/empty", + "hexcasting:directrix/redstone", + "hexcasting:directrix/boolean", + "hexcasting:impetus/empty", + "hexcasting:impetus/rightclick", + "hexcasting:impetus/look", + "hexcasting:impetus/redstone", + "hexcasting:amethyst_tiles", + "hexcasting:amethyst_bricks", + "hexcasting:amethyst_bricks_small", + "hexcasting:amethyst_pillar", + "hexcasting:slate_amethyst_tiles", + "hexcasting:slate_amethyst_bricks", + "hexcasting:slate_amethyst_bricks_small", + "hexcasting:slate_amethyst_pillar", + "hexcasting:amethyst_sconce", + "hexcasting:quenched_allay", + "hexcasting:quenched_allay_tiles", + "hexcasting:quenched_allay_bricks", + "hexcasting:quenched_allay_bricks_small" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000000..02d08df2b3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:amethyst_dust_block" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json new file mode 100644 index 0000000000..f27c95c784 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/unstable_bottom_center.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_fence_gate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json new file mode 100644 index 0000000000..117722b2be --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_fences.json @@ -0,0 +1,6 @@ +{ + "values": [ + "hexcasting:edified_fence", + "hexcasting:edified_fence" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json new file mode 100644 index 0000000000..c2e7fad75b --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_stairs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_stairs" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/block/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_armor.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_effects.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json new file mode 100644 index 0000000000..4209c89aa3 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/damage_type/bypasses_shield.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:overcast" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json new file mode 100644 index 0000000000..ff8e420cc6 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/leaves.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:amethyst_edified_leaves", + "hexcasting:aventurine_edified_leaves", + "hexcasting:citrine_edified_leaves" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json new file mode 100644 index 0000000000..22fc9e7a51 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/logs_that_burn.json @@ -0,0 +1,12 @@ +{ + "values": [ + "hexcasting:edified_log", + "hexcasting:edified_log_amethyst", + "hexcasting:edified_log_aventurine", + "hexcasting:edified_log_citrine", + "hexcasting:edified_log_purple", + "hexcasting:stripped_edified_log", + "hexcasting:edified_wood", + "hexcasting:stripped_edified_wood" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json new file mode 100644 index 0000000000..36cc46d6db --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/planks.json @@ -0,0 +1,7 @@ +{ + "values": [ + "hexcasting:edified_planks", + "hexcasting:edified_panel", + "hexcasting:edified_tile" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json new file mode 100644 index 0000000000..672bbc1a69 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_buttons.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_button" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json new file mode 100644 index 0000000000..e5614ff46f --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_doors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_door" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json new file mode 100644 index 0000000000..8880072112 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_pressure_plates.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_pressure_plate" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json new file mode 100644 index 0000000000..af4c10b029 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_slabs.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_slab" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json new file mode 100644 index 0000000000..0e9f576897 --- /dev/null +++ b/Neoforge/src/generated/resources/data/minecraft/tags/item/wooden_trapdoors.json @@ -0,0 +1,5 @@ +{ + "values": [ + "hexcasting:edified_trapdoor" + ] +} \ No newline at end of file diff --git a/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json b/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json new file mode 100644 index 0000000000..e21250326e --- /dev/null +++ b/Neoforge/src/generated/resources/data/neoforge/loot_modifiers/global_loot_modifiers.json @@ -0,0 +1,39 @@ +{ + "entries": [ + "hexcasting:scroll/minecraft/chests/simple_dungeon", + "hexcasting:scroll/minecraft/chests/abandoned_mineshaft", + "hexcasting:scroll/minecraft/chests/bastion_other", + "hexcasting:scroll/minecraft/chests/nether_bridge", + "hexcasting:scroll/minecraft/chests/jungle_temple", + "hexcasting:scroll/minecraft/chests/desert_pyramid", + "hexcasting:scroll/minecraft/chests/village/village_cartographer", + "hexcasting:scroll/minecraft/chests/shipwreck_map", + "hexcasting:scroll/minecraft/chests/bastion_treasure", + "hexcasting:scroll/minecraft/chests/end_city_treasure", + "hexcasting:scroll/minecraft/chests/ancient_city", + "hexcasting:scroll/minecraft/chests/pillager_outpost", + "hexcasting:scroll/minecraft/chests/woodland_mansion", + "hexcasting:scroll/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/simple_dungeon", + "hexcasting:lore/minecraft/chests/abandoned_mineshaft", + "hexcasting:lore/minecraft/chests/pillager_outpost", + "hexcasting:lore/minecraft/chests/woodland_mansion", + "hexcasting:lore/minecraft/chests/stronghold_library", + "hexcasting:lore/minecraft/chests/village/village_desert_house", + "hexcasting:lore/minecraft/chests/village/village_plains_house", + "hexcasting:lore/minecraft/chests/village/village_savanna_house", + "hexcasting:lore/minecraft/chests/village/village_snowy_house", + "hexcasting:lore/minecraft/chests/village/village_taiga_house", + "hexcasting:cypher/minecraft/chests/simple_dungeon", + "hexcasting:cypher/minecraft/chests/abandoned_mineshaft", + "hexcasting:cypher/minecraft/chests/stronghold_corridor", + "hexcasting:cypher/minecraft/chests/jungle_temple", + "hexcasting:cypher/minecraft/chests/desert_pyramid", + "hexcasting:cypher/minecraft/chests/ancient_city", + "hexcasting:cypher/minecraft/chests/nether_bridge", + "hexcasting:scroll/hexcasting/random_scroll", + "hexcasting:cypher/hexcasting/random_cypher", + "hexcasting:amethyst_cluster" + ], + "replace": false +} \ No newline at end of file From d054fec7fd9f169235c81d8d6da1f48b90beaa3d Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 11 Feb 2026 13:10:37 -0600 Subject: [PATCH 37/51] Start of changes to comply with PR requested changes; Reverted NullIota and GarbageIota implementations, Adjusted various things, Got FabricRegister working, etc --- Common/build.gradle | 9 ----- .../FailToCastGreatSpellTrigger.java | 4 +- .../api/advancements/MinMaxLongs.java | 13 +----- .../hexcasting/api/casting/ActionUtils.kt | 4 +- .../api/casting/eval/vm/FrameFinishEval.kt | 2 +- .../api/casting/iota/BooleanIota.java | 7 +--- .../api/casting/iota/GarbageIota.java | 8 ++-- .../hexcasting/api/casting/iota/IotaType.java | 38 +++++++++++++----- .../hexcasting/api/casting/iota/NullIota.java | 12 ++---- .../api/casting/mishaps/MishapDivideByZero.kt | 2 +- .../api/casting/mishaps/MishapInvalidIota.kt | 2 +- .../mishaps/MishapInvalidOperatorArgs.kt | 2 +- .../casting/mishaps/MishapInvalidPattern.kt | 2 +- .../mishaps/MishapLocationInWrongDimension.kt | 2 +- .../casting/mishaps/MishapNotEnoughArgs.kt | 2 +- .../api/casting/mishaps/MishapStackSize.kt | 2 +- .../casting/actions/akashic/OpAkashicRead.kt | 2 +- .../common/casting/actions/lists/OpIndex.kt | 2 +- .../common/casting/actions/lists/OpUnCons.kt | 2 +- .../casting/actions/local/OpPeekLocal.kt | 2 +- .../actions/raycast/OpBlockAxisRaycast.kt | 2 +- .../actions/raycast/OpEntityRaycast.kt | 2 +- .../casting/actions/rw/OpTheCoolerWritable.kt | 2 +- .../spells/sentinel/OpGetSentinelPos.kt | 2 +- .../spells/sentinel/OpGetSentinelWayfind.kt | 2 +- .../arithmetic/operator/list/OperatorIndex.kt | 2 +- .../operator/list/OperatorUnCons.kt | 2 +- .../operator/list/OperatorUnappend.kt | 2 +- .../hexcasting/common/lib/hex/HexActions.java | 2 +- .../hexcasting/common/misc/ContainerInput.kt | 21 ---------- .../datagen/recipe/HexplatRecipes.java | 9 ++++- .../hexcasting/xplat/IXplatAbstractions.java | 6 +++ .../hexcasting/xplat/IXplatRegister.java | 5 ++- Fabric/build.gradle | 4 +- Fabric/libs/jankson-1.2.3.jar | Bin 75817 -> 0 bytes .../hexcasting/fabric/FabricHexInitializer.kt | 6 +-- Neoforge/gradle.properties | 2 +- .../forge/cap/ForgeCapabilityHandler.java | 5 --- .../forge/recipe/ForgeUnsealedIngredient.java | 2 +- build.gradle | 22 ---------- 40 files changed, 86 insertions(+), 133 deletions(-) delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt delete mode 100644 Fabric/libs/jankson-1.2.3.jar diff --git a/Common/build.gradle b/Common/build.gradle index a5c91e1913..02923f17b5 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -6,11 +6,6 @@ loom { accessWidenerPath = file("src/main/resources/hexplat.accesswidener") } -pkSubproj { - platform = "common" - pkPublish = false -} - repositories { mavenCentral() mavenLocal() @@ -35,10 +30,6 @@ repositories { maven { url = "https://maven.terraformersmc.com/releases/" } } -loom { - accessWidenerPath = file("src/main/resources/hexplat.accesswidener") -} - dependencies { // === MANDATORY DEPS === // We depend on Fabric Loader here to use the Fabric @Environment annotations, diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java index f58dfab3a9..f1cb105c3d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/FailToCastGreatSpellTrigger.java @@ -24,10 +24,10 @@ public void trigger(ServerPlayer player) { public static record Instance(Optional player) implements SimpleCriterionTrigger.SimpleInstance { public static final Codec CODEC = RecordCodecBuilder.create( - p_337348_ -> p_337348_.group( + triggerInstance -> triggerInstance.group( EntityPredicate.ADVANCEMENT_CODEC.optionalFieldOf("player").forGetter(FailToCastGreatSpellTrigger.Instance::player) ) - .apply(p_337348_, FailToCastGreatSpellTrigger.Instance::new) + .apply(triggerInstance, FailToCastGreatSpellTrigger.Instance::new) ); @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java index 15ecc74267..f620decb20 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/MinMaxLongs.java @@ -10,9 +10,7 @@ public record MinMaxLongs( Optional min, - Optional max, - Optional minSq, - Optional maxSq + Optional max ) implements MinMaxBounds { public static final Codec CODEC = MinMaxBounds.createCodec(Codec.LONG, MinMaxLongs::new); @@ -20,10 +18,6 @@ public record MinMaxLongs( public static final MinMaxLongs ANY = new MinMaxLongs(Optional.empty(), Optional.empty()); - private MinMaxLongs(Optional min, Optional max) { - this(min, max, squareOpt(min), squareOpt(max)); - } - private static MinMaxLongs create(StringReader reader, Optional min, Optional max) throws CommandSyntaxException { if (min.isPresent() && max.isPresent() && min.get() > max.get()) { @@ -58,11 +52,6 @@ public boolean matches(long value) { && (this.max.isEmpty() || this.max.get() >= value); } - public boolean matchesSqr(long value) { - return (this.minSq.isEmpty() || this.minSq.get() <= value) - && (this.maxSq.isEmpty() || this.maxSq.get() >= value); - } - public static MinMaxLongs fromReader(StringReader reader) throws CommandSyntaxException { return fromReader(reader, l -> l); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt index eaa9cc1e75..6f6bb6af2c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt @@ -317,7 +317,7 @@ fun evaluatable(datum: Iota, reverseIdx: Int): Either = ) } -fun Iota?.orNull() = this ?: NullIota.INSTANCE +fun Iota?.orNull() = this ?: NullIota() // TODO do we make this work on lists // there should probably be some way to abstract function application over lists, vecs, and numbers, @@ -339,5 +339,5 @@ inline val BlockPos.asActionResult get() = listOf(Vec3Iota(Vec3.atCenterOf(this) inline val Vector3f.asActionResult get() = listOf(Vec3Iota(Vec3(this))) inline val Vec3.asActionResult get() = listOf(Vec3Iota(this)) -inline val Entity?.asActionResult get() = listOf(if (this == null) NullIota.INSTANCE else EntityIota(this)) +inline val Entity?.asActionResult get() = listOf(if (this == null) NullIota() else EntityIota(this)) inline val HexPattern.asActionResult get() = listOf(PatternIota(this)) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt index ed16b1768c..ab41e8b436 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt @@ -27,7 +27,7 @@ object FrameFinishEval : ContinuationFrame { harness: CastingVM ): CastResult { return CastResult( - NullIota.INSTANCE, + NullIota(), continuation, null, listOf(), diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java index 8b03fc33c9..84cfdf6976 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java @@ -43,7 +43,7 @@ public int hashCode() { @Override public Component display() { - return BooleanIota.display(getBool()); + return BooleanIota.display(value); } public static IotaType TYPE = new IotaType<>() { @@ -70,11 +70,6 @@ public int color() { } }; - public static BooleanIota deserialize(Tag tag) throws IllegalArgumentException { - var dtag = HexUtils.downcast(tag, ByteTag.TYPE); - return new BooleanIota(dtag.getAsByte() != 0); - } - public static Component display(boolean b) { return Component.translatable(b ? "hexcasting.tooltip.boolean_true" : "hexcasting.tooltip.boolean_false") .withStyle(b ? ChatFormatting.DARK_GREEN : ChatFormatting.DARK_RED); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java index f0c869b00c..c618d32ca1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java @@ -12,14 +12,12 @@ * this is LITERALLY a copy of NullIota but I can't see how to do it any better, i hate java generics */ public class GarbageIota extends Iota { - public static final GarbageIota INSTANCE = new GarbageIota(); - private static final Object NULL_SUBSTITUTE = new Object(); public static final Component DISPLAY = Component.literal("arimfexendrapuse") .withStyle(ChatFormatting.DARK_GRAY, ChatFormatting.OBFUSCATED); - private GarbageIota() { + public GarbageIota() { // We have to pass *something* here, but there's nothing that actually needs to go there, // so we just do this i guess super(() -> HexIotaTypes.GARBAGE); @@ -46,9 +44,9 @@ public Component display() { } public static IotaType TYPE = new IotaType<>() { - public static final MapCodec CODEC = MapCodec.unit(GarbageIota.INSTANCE); + public static final MapCodec CODEC = MapCodec.unit(new GarbageIota()); public static final StreamCodec STREAM_CODEC = - StreamCodec.unit(GarbageIota.INSTANCE); + StreamCodec.unit(new GarbageIota()); @Override public MapCodec codec() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index 66e4130482..2ebbcf455d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -25,6 +25,27 @@ // Take notes from ForgeRegistryEntry public abstract class IotaType { + + /** + * Get a codec associated with this datum. It can be used with {@code TYPED_CODEC} to serialize and deserialize said datum. + * @return {@code MapCodec} + */ + public abstract MapCodec codec(); + + /** + * Get a {@link StreamCodec} associated with this datum. + * Is used for Client <-> Server communication. + *

+ * It can be used with {@code TYPED_STREAM_CODEC} to deserde said datum with {@link RegistryFriendlyByteBuf} + * @return {@link StreamCodec} of {@link IotaType} + */ + public abstract StreamCodec streamCodec(); + + /** + * Get the color associated with this datum type. + */ + public abstract int color(); + public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE .getIotaTypeRegistry() .byNameCodec() @@ -32,22 +53,23 @@ public abstract class IotaType { .comapFlatMap( iota -> { if (isTooLargeToSerialize(List.of(iota), 0)) { - return DataResult.success(GarbageIota.INSTANCE); + return DataResult.success(new GarbageIota()); } return DataResult.success(iota); }, Function.identity() - ).orElse(GarbageIota.INSTANCE) + ).orElse(new GarbageIota()) ); + public static final StreamCodec TYPED_STREAM_CODEC = ByteBufCodecs .registry(HexRegistries.IOTA_TYPE) .dispatch(Iota::getType, IotaType::streamCodec); - - public abstract MapCodec codec(); - - public abstract StreamCodec streamCodec(); - + /** + * Checks if an Iterable Iota object is too large for deserde. + * @param examinee + * @return {@code boolean} + */ public static boolean isTooLargeToSerialize(Iterable examinee) { return isTooLargeToSerialize(examinee, 1); } @@ -66,6 +88,4 @@ public static Component brokenIota() { return Component.translatable("hexcasting.spelldata.unknown") .withStyle(ChatFormatting.GRAY, ChatFormatting.ITALIC); } - - public abstract int color(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java index 73bde5b4fb..de64be3ba0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java @@ -16,13 +16,11 @@ * An iota with no data associated with it. */ public class NullIota extends Iota { - public static final NullIota INSTANCE = new NullIota(); - private static final Object NULL_SUBSTITUTE = new Object(); public static final Component DISPLAY = Component.translatable("hexcasting.tooltip.null_iota").withStyle(ChatFormatting.GRAY); - private NullIota() { + public NullIota() { super(() -> HexIotaTypes.NULL); } @@ -37,9 +35,7 @@ public boolean toleratesOther(Iota that) { } @Override - public int hashCode() { - return NULL_SUBSTITUTE.hashCode(); - } + public int hashCode() { return 0; } @Override public Component display() { @@ -47,9 +43,9 @@ public Component display() { } public static IotaType TYPE = new IotaType<>() { - public static final MapCodec CODEC = MapCodec.unit(NullIota.INSTANCE); + public static final MapCodec CODEC = MapCodec.unit(new NullIota()); public static final StreamCodec STREAM_CODEC = - StreamCodec.unit(NullIota.INSTANCE); + StreamCodec.unit(new NullIota()); @Override public MapCodec codec() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt index b31a0c84f3..a7b84287ab 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt @@ -17,7 +17,7 @@ class MishapDivideByZero(val operand1: Component, val operand2: Component, val s dyeColor(DyeColor.RED) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota.INSTANCE) + stack.add(new GarbageIota()) env.mishapEnvironment.damage(0.5f) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt index 18462ce2e2..557f4da2bc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt @@ -21,7 +21,7 @@ class MishapInvalidIota( dyeColor(DyeColor.GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack[stack.size - 1 - reverseIdx] = GarbageIota.INSTANCE; + stack[stack.size - 1 - reverseIdx] = new GarbageIota(); } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component? { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt index 187ecd8dac..82e8bc8986 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt @@ -18,7 +18,7 @@ class MishapInvalidOperatorArgs(val perpetrators: List) : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { for (i in perpetrators.indices) { - stack[stack.size - 1 - i] = GarbageIota.INSTANCE + stack[stack.size - 1 - i] = new GarbageIota() } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt index efaa6c42f1..f4fc216859 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt @@ -20,7 +20,7 @@ class MishapInvalidPattern(val pattern: HexPattern?) : Mishap() { override fun resolutionType(ctx: CastingEnvironment) = ResolvedPatternType.INVALID override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota.INSTANCE) + stack.add(new GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component? { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt index c13b88af58..2b5570b8c2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt @@ -13,7 +13,7 @@ class MishapLocationInWrongDimension(val properDimension: ResourceLocation) : Mi dyeColor(DyeColor.MAGENTA) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(GarbageIota.INSTANCE) + stack.add(new GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt index beed34a8de..e62bab1fcd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt @@ -11,7 +11,7 @@ class MishapNotEnoughArgs(val expected: Int, val got: Int) : Mishap() { dyeColor(DyeColor.LIGHT_GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - repeat(expected - got) { stack.add(GarbageIota.INSTANCE) } + repeat(expected - got) { stack.add(new GarbageIota()) } } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt index 87dc91a010..59cecdd993 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt @@ -16,7 +16,7 @@ class MishapStackSize() : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { stack.clear() - stack.add(GarbageIota.INSTANCE) + stack.add(new GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt index 552ba4e5ac..34a28f0d26 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/akashic/OpAkashicRead.kt @@ -24,6 +24,6 @@ object OpAkashicRead : ConstMediaAction { } val datum = record.lookupPattern(pos, key, env.world) - return listOf(datum ?: NullIota.INSTANCE) + return listOf(datum ?: NullIota()) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt index 261cf0f696..dacaa022a8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpIndex.kt @@ -13,7 +13,7 @@ object OpIndex : ConstMediaAction { override fun execute(args: List, env: CastingEnvironment): List { val list = args.getList(0, argc).toMutableList() val index = args.getDouble(1, argc) - val x = list.getOrElse(index.roundToInt()) { NullIota.INSTANCE } + val x = list.getOrElse(index.roundToInt()) { NullIota() } return listOf(x) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt index 5156595309..211e91283d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/lists/OpUnCons.kt @@ -14,6 +14,6 @@ object OpUnCons : ConstMediaAction { if (list.nonEmpty) { return listOf(ListIota(list.cdr), list.car) } - return listOf(args[0], NullIota.INSTANCE) + return listOf(args[0], NullIota()) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt index f0e4b994c6..e2c254a785 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt @@ -18,7 +18,7 @@ object OpPeekLocal : Action { val rm = if (image.userData.contains(HexAPI.RAVENMIND_USERDATA)) { IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, image.userData.getCompound(HexAPI.RAVENMIND_USERDATA)).getOrThrow() } else { - NullIota.INSTANCE + NullIota() } stack.add(rm) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt index 37d7aa33e9..2aa68ecf28 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockAxisRaycast.kt @@ -35,7 +35,7 @@ object OpBlockAxisRaycast : ConstMediaAction { return if (blockHitResult.type == HitResult.Type.BLOCK && env.isVecInRange(Vec3.atCenterOf(blockHitResult.blockPos))) { blockHitResult.direction.step().asActionResult } else { - listOf(NullIota.INSTANCE) + listOf(NullIota()) } } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt index 75ea1d5adf..64ea54525a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpEntityRaycast.kt @@ -38,7 +38,7 @@ object OpEntityRaycast : ConstMediaAction { return if (entityHitResult != null && env.isEntityInRange(entityHitResult.entity)) { entityHitResult.entity.asActionResult } else { - listOf(NullIota.INSTANCE) + listOf(NullIota()) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt index e76a6dba84..3fac90b52f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/rw/OpTheCoolerWritable.kt @@ -21,7 +21,7 @@ object OpTheCoolerWritable : ConstMediaAction { val datumHolder = IXplatAbstractions.INSTANCE.findDataHolder(target) ?: return false.asActionResult - val success = datumHolder.writeIota(NullIota.INSTANCE, true) + val success = datumHolder.writeIota(NullIota(), true) return success.asActionResult } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt index 1363ed9528..fa56812ca5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelPos.kt @@ -18,7 +18,7 @@ object OpGetSentinelPos : ConstMediaAction { if (env.castingEntity !is ServerPlayer) throw MishapBadCaster() - val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota.INSTANCE) + val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota()) if (sentinel.dimension != env.world.dimension()) throw MishapLocationInWrongDimension(sentinel.dimension.location()) return sentinel.position.asActionResult diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt index aacc6ea486..cad52447ed 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/sentinel/OpGetSentinelWayfind.kt @@ -23,7 +23,7 @@ object OpGetSentinelWayfind : ConstMediaAction { val from = args.getVec3(0, argc) - val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota.INSTANCE) + val sentinel = IXplatAbstractions.INSTANCE.getSentinel(env.castingEntity as? ServerPlayer) ?: return listOf(NullIota()) if (sentinel.dimension != env.world.dimension()) throw MishapLocationInWrongDimension(sentinel.dimension.location()) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt index e08265b4e0..2ecb5fc140 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt @@ -15,7 +15,7 @@ object OperatorIndex : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.of val it = iotas.iterator() val list = downcast(it.next(), LIST).list.toMutableList() val index = downcast(it.next(), DOUBLE).double - val x = list.getOrElse(index.roundToInt()) { NullIota.INSTANCE } + val x = list.getOrElse(index.roundToInt()) { NullIota() } return listOf(x) } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt index be234fd5b7..54f0de69c2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt @@ -17,6 +17,6 @@ object OperatorUnCons : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate.of val list = it.nextList(arity) if (list.nonEmpty) return listOf(ListIota(list.cdr), list.car) - return listOf(ListIota(list), NullIota.INSTANCE) + return listOf(ListIota(list), NullIota()) } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt index d318ff21a4..6d60362b0d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt @@ -15,7 +15,7 @@ object OperatorUnappend : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate. override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { val it = iotas.iterator().withIndex() val list = it.nextList(arity).toMutableList() - val last = list.removeLastOrNull() ?: NullIota.INSTANCE + val last = list.removeLastOrNull() ?: NullIota() return listOf(ListIota(list), last) } } \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java index c7a509676d..c724300302 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexActions.java @@ -422,7 +422,7 @@ public class HexActions { // == Consts == public static final ActionRegistryEntry CONST$NULL = make("const/null", - new ActionRegistryEntry(HexPattern.fromAngles("d", HexDir.EAST), Action.makeConstantOp(NullIota.INSTANCE))); + new ActionRegistryEntry(HexPattern.fromAngles("d", HexDir.EAST), Action.makeConstantOp(new NullIota()))); public static final ActionRegistryEntry CONST$TRUE = make("const/true", new ActionRegistryEntry(HexPattern.fromAngles("aqae", diff --git a/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt b/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt deleted file mode 100644 index 015f7d4985..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/misc/ContainerInput.kt +++ /dev/null @@ -1,21 +0,0 @@ -package at.petrak.hexcasting.common.misc - -import net.minecraft.core.RegistryAccess -import net.minecraft.world.Container -import net.minecraft.world.inventory.CraftingContainer -import net.minecraft.world.item.ItemStack -import net.minecraft.world.item.crafting.RecipeInput - -abstract class ContainerInput(val container: Container) : RecipeInput { - - - override fun getItem(i: Int): ItemStack? { - return container.getItem(i) - } - - abstract fun assemble(inv: CraftingContainer, access: RegistryAccess): ItemStack - - override fun size(): Int { - return container.containerSize - } -} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index 4def9f9862..d254d28eb4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -17,6 +17,8 @@ import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; import at.petrak.hexcasting.datagen.IXplatIngredients; import at.petrak.hexcasting.datagen.recipe.builders.BrainsweepRecipeBuilder; +import at.petrak.hexcasting.datagen.recipe.builders.CreateCrushingRecipeBuilder; +import at.petrak.hexcasting.datagen.recipe.builders.FarmersDelightCuttingRecipeBuilder; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.advancements.Criterion; import net.minecraft.advancements.critereon.InventoryChangeTrigger; @@ -25,6 +27,9 @@ import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.*; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; import net.minecraft.tags.ItemTags; import net.minecraft.tags.TagKey; import net.minecraft.world.entity.EntityType; @@ -510,7 +515,7 @@ public void buildRecipes(RecipeOutput recipes) { .save(recipes, modLoc("quench_allay")); // Create compat - /*this.conditions.apply(new CreateCrushingRecipeBuilder() + this.conditions.apply(new CreateCrushingRecipeBuilder() .withInput(Blocks.AMETHYST_CLUSTER) .duration(150) .withOutput(Items.AMETHYST_SHARD, 7) @@ -568,7 +573,7 @@ public void buildRecipes(RecipeOutput recipes) { .withTool(ingredients.axeDig()) .withOutput(HexBlocks.EDIFIED_PLANKS)) .whenModLoaded("farmersdelight") - .save(recipes, modLoc("compat/farmersdelight/cutting/akashic_door"));*/ + .save(recipes, modLoc("compat/farmersdelight/cutting/akashic_door")); } private void staffRecipe(RecipeOutput recipes, ItemStaff staff, Item plank) { diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 369b764743..8825bb6586 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -191,6 +191,12 @@ BlockEntityType createBlockEntityType(BiFunction} + * @param + */ IXplatRegister createRegistar(ResourceKey> registryKey); // interop diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java index 76d9091fd6..77130ba486 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatRegister.java @@ -5,8 +5,9 @@ import java.util.function.Supplier; /** - * Handles registration - * @param + * A platform-agnostic registry of type {B}
+ * FabricRegister registers directly while ForgeRegister uses deferred registry instead + * @param The Type the IXplatRegister is registering */ public interface IXplatRegister { diff --git a/Fabric/build.gradle b/Fabric/build.gradle index b12f4b9e0c..f9aedd8d24 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -10,7 +10,6 @@ architectury { // FIXME: update dependencies/versions before releasing 0.12 pkSubproj { - platform = "fabric" pkPublish = true curseforgeJar = remapJar.archiveFile curseforgeDependencies([ @@ -154,7 +153,8 @@ dependencies { modLocalRuntime "dev.architectury:architectury-fabric:$architecturyVersion" modLocalRuntime "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" modLocalRuntime "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" - localRuntime "hexcasting:jankson:1.2.3" + // fuck you jankson fuck you jankson fuck you jankson (jankson loves to crash Fabric:runClient with a NoSuchMethodException for no reason and then act like nothing happened) + localRuntime "blue.endless:jankson:1.2.3" // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" diff --git a/Fabric/libs/jankson-1.2.3.jar b/Fabric/libs/jankson-1.2.3.jar deleted file mode 100644 index d5479eda0d21566b0e633bc196dfac72058cb77a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75817 zcmb@t1#BJ5wk_%yVrFJ$W@d_+nPHi|%uF#eGcz+YGc&UtGsJAi5dZ9R&VB#sOMB~F z=`VG)TB@G2yGPX=HELEZMHw(~G!Q5#C=la{Cv}kj>j(YkT25S5m|jX=f)NZvQ3ev~ zuUgRm+@komhG_q{p`5V1l!Um7DubNFz1-BKtPDNFJiH7&&CJwnqcYPH>)w$g9sT&M z9NoC=%Hy;G^|aLTqs)|Cv+|hq)Fi{q?BUVD5$L}jE==cl%KOJP_n-3j4~O_uYi#2J z_+Py-{QnpMfTlJ8C#V0FG5Y`4*vbfK?PLf1Upb-qJ15frc19-RVrgRvaAYvCF>-Qh z*05H=Rm1W{fCeA1qAs>Tr>brWn&T*jsFV|fPJ$`HBo2wx-X??WaBdvG1lk*p#1MYu z<-Q5~efPa(AuTrP_Flxc6CA(gr_4lh)GGpnT&_QNop|KjUwX}~e;n=-`h8)FaS_zs zyX~*cL$`&~!#yv-Sx__KccyLcSK$!V5o2ZZO6W($l6sk&LHc&?L2w|UeUgH{p&0F@ zz5->Lo<-1+pRuB+w%X1u+3NeUcP2!MMwp{?Ll?sYw~WVU(1sv>pOJG+5h$o4VhlC1 z#S#LssRXgjHDVt%upV1bF^<`w)yYNJLSu@rF&BA4HTvTs1K`BklYFRR$!-oiP%mUN z8)m83TxCxj*UHY{l)|apA^~caE#Xc^%%ni&E^OF>$t+%{AT0P5t0S^s9B5ThV+)%z zdF@`H4Y8OPpu#mhrvje6ua0fgMPTERS5j;x51VYFc7s6871)SgGhIQ=YYl97wPnto zJj3A}EXV?d^NFSzh&2KicZgw`g0PCLp~~S=p*4#hZ-+bV3V?-DDlRWaJA#ik=o+e< zPb=`Z_Hw}@a7ZR+i=u7|n)Je<2nt!0W2=g(VsS5Rw4AXgE5Uv@6G$wQ%%^aPa2{=- zR#PZ@06*J-_PpxM7`9)@_Ja!#TTS=+`+OgtQ518MS4y&;QE0|sH07v}iFWJ;_F-_G7-jjL2lFT&wRZgk{tcqFKJj1Ufo%v&h`aY<$ z(Bwk;DMYE7r+=vHm#!ZBo2CC2Z|5;%cR-?*e-B6_+@8Vy%6ZhqO^=aFIvmOl3Vd&o zVC=|#hz9+oV1R_=_u#3}du4b~8SFcHcFn`L1R4YB)*leNud^;bitsKxi_p=N3WAC< z09F^f4|qOv`hnUd%UsNaq;UhIXSu$w=1yKFv7Qt=vxj&So8uLhv*+e~5wCc#34O`x zTsKQTWk|g2k6c{|C37k-c7p>@Q0~;25qs#?KlchWR&kV7g~=X)(;J?ukrHlvgy1(I zKZQkkI3kA7t3`S+3(oVMQfey6!>k1N5fA7A(pV7KEu*u=VhzJ60~IgPfIJV+ZF1EZ>z=r4?vHzehy4%E*EPX} zd?K$tqnkoV!adOg3xAqXiui;=9Sf1cZ-rpG?sLn(3I7^dh!hJxXTU)~@{#_D+$sN- zCI9fPg0U6A#F>ow-xL|Grl+zYgvO8S4-!pYu)N|M76CJlBlrra*S;8wLcan_Ig=p- zy)|ntD_nTsdsJKi z6A4@*pmN*=s6l_t^;&O~%jKfuCo|Z2$6VWX1_%lBGUYiVmu3JrJpuPp6^3&NSxYx6 zZolFXV4Z>>UgRZV#taP*#%@I?%VQ}U9ZApE3DH~Bu~ePvu*|&vIw(Y;6G0qqgiQ)_ zZJ1rOn*Bi8r`V@uKFiC`sGgyZS z>?kSziJMy^yWJ@qx{L3_A>1;Av{9o`{w~(v^h@}@X$m(~V*TJ?=^TBK1{+?*`#F$! zJ|Aw;AD8Z=j4{$|nq$i>@cVp++GBRcG#XDQed-m03(g{f-z5TuCsy;0t<}vJTO_|O zO*;-6K0BEHaBI29fLIb<*Wn7@q1M^$LQl03nUHW0LA0tv^!B~&1(MPWc4zXL$_$aF z#s=%nu6kSSn8ER*x>C^*jKMuY(D(uY<-WM!qKX4#5Q`GGkQ{<^0q7}}5zy+EVOlbh zjdzH&7W*$+Zy`Dc)MWe2(Z~hq7PFsj3B8S^2zwdL7PwmMr=4|7zln<#i)Cv=E+R=svsp(Ngrl}vvQeaP@#(y@MOq}O9mBg-xl3PlP% z145c*WOu+3TKk>&`&oUyBj3fIQ|EZxJ9XU@SdSS6svnZ+gL>~D( zY~UKLF^~R{UF~20DK?1yE;fvSKs#q6XUqSkB4PM1{K>o6*cchx0RA0v!3zD-gFjIOPbww3#Hqpjq#?am$e=@VDD77;!7A+Z8uNTnb{tf zUERH1pj^W-fgycLWipQAvTW$VxH5@o=?=xr>B;KM4>Hw&vhn^1A;y$s=VrFpYc(tt zQ~V|fgyYKqhZisio>r}NNjBvS@Qz(t1*_aXeMOu~!+zCM}Q^E ziwa5{xe94Y6U{g^#Ovp`TGr|UY}~B98A7krldP-7yDlohOy#7ghOU_YjgQ)&UM1Qn zdoQhmf#PcTkC{$>K0tI4D|GTBBqS~_f#Q~K%-R7e)C?KEvHBo821O@wux6<_m; zqTeU$W{kE9Sw6M3cf!s$PBGUKniNl8_bJu!)aj67HAo^Y`BzxyNQBc3XKVKjwB+D| zN8()~wXBWDdKXdFBds8l=`2tf~0P`4ERmvq^gNoVRYzaXQ(n`l27k|W`fJRrnko$Hb1n3`B$u< z8ozhK{sFr4AHin%FTfT9IQRo+W~=pNJGR!3}9yDV&nWD=7^pAi#b9* z%WX|As`Y88!VU^(nHj(_YYL(Sw-YYkGYpjT0vgS2a9bf~(tf z0Y^T2i|^y$6OwJSP%0M4v#5JT7>+45k8hoSwA&IeSu$Cd91ZThM%m~l(DvLkb(ghB zd$Lu{%rs>|+n0q`#V8n=5Fc=ulAWR zf8zVoHWYtGiNB{9rvIXS{tw0cpFZC$Kgjf_&(k-B+%2+@1PQ_6W8Dml1T7K8QHfg` z8aWQA9qsW@xzZ#{n(TdXrwSSr!Xhymf1=#I#~;r%_(=#dQ%^ZZoK;d{JpQy^=ftA% zG>ooJV+~u|g}`;FOk23yhNejg=hUpaK*gK7$aXRX`v4_5eL?tmhY9_mrId_qU^y5h ztm3Jj8T8TCpwIZC#G8!+l$GS_v9*m|Z>&BGnA5Acfgd={J@qkiZh;91BfL(?loI2z z(Lhm~Sr7do^~T521(iL1o-A6%8J=))<}OB56}&Cp&4VO(@|9!I2dRwEOef0r(y(=e z63OKIKIdPM8dETtJpKVJ`5(JH?%zRbYh-R|^8Zf;;NPxPJ?sH;e>we+yw&*Sr@D;( zxs&eCiA{hc0Y|i%#7-vq6{>-}2;N`F3WLn3^?Y(l=Fad=-}^pfT79WSxoHK+AZ%;R zNw3Xo!HcA%tDRcVd=dM>_$u=#D%1PiGtQGZfXMoD+i8~jnQqr<#z*7xZ3G?U;x-lv z6v_(fEG?iM^hh$wM1sV2tvfvCn$&CoHBH-YJ!O>$sYs+m3R&nv;J2yOF&P8?<&i`BO*%fn)Ohcb-a;0|U(UJZ(Tarmi zNLh>ylTKa%TV@~Id7|AFpR(Z-S8#TY^?J7pvZ`TBNITE*ev3oTD;#JBpmYiqpC2@T zB1Mf}+0Z{GSd&aKW!%*q#s)o^o}T>CI_&HPG(}M*_VBfYu9of?kG4ugv(zYE$Og1| z`!*xHDtp6$#1g?h#l%{ZxUP%~{H@xV#Ok0evzUkA-cvo>!G`5_$xjxdDHRS#ei?(qTt?I zNp)Vn5i2Jpg^5l|KkGIW2QijJx6qz_r7qj)3rUaIJ1$&aHj1WCpjeDbX#&1g%4gmwW*6h3HyJVB$%D8o4F6P|&82qWwk3x|v^dBuCvxrJzF-$Ri#PR_bT zX+{)Wq_a3c$r-VlMm^t%(`Am7~9~*L)4FXhShHwcU#?e zTRxz-nbJSQ`f(6Wxxz&06lfQX8_^#W^R383C(51}@D2L6`B=`@9>!Rc&nWzP7Bx~I ztDFm_u?%tBFhfFs_)<)mi=$V{#H4)0Fc72^^_7y6jIZx7mX0>+t{i9FHA1#W`vr
|hv6IgX9o6~UnRz=k+AyxPB0f>Xdpvma< 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 diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index 8b0f36220a..f6aa4f9289 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -157,15 +157,15 @@ object FabricHexInitializer : ModInitializer { } ItemGroupEvents.modifyEntriesEvent(HexCreativeTabs.SCROLLS_KEY).register { r -> - val keyList = ArrayList?>() + val keyList = ArrayList>() val regi = FabricXplatImpl.INSTANCE.getActionRegistry() - for (key in regi.registryKeySet()) if (isOfTag( + for (key in regi.registryKeySet()) if (isOfTag( regi, key, HexTags.Actions.PER_WORLD_PATTERN ) ) keyList.add(key) - keyList.sortWith(Comparator.comparing?, ResourceLocation?>(Function { obj: ResourceKey? -> obj!!.location() })) + keyList.sortWith(Comparator.comparing, ResourceLocation>(Function { obj: ResourceKey -> obj.location() })) for (key in keyList) { r.accept( ItemScroll.withPerWorldPattern( diff --git a/Neoforge/gradle.properties b/Neoforge/gradle.properties index 1d49dfda13..3eb4701df1 100644 --- a/Neoforge/gradle.properties +++ b/Neoforge/gradle.properties @@ -6,7 +6,7 @@ loom.platform=neoforge kotlinForForgeVersion=5.8.0 kotlinBaseVersion=2.1.20 -kotlinxCoroutinesVersion= +kotlinxCoroutinesVersion=1.10.2 curiosVersion=9.5.1 caelusVersion=7.0.1+1.21.1 diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java index fe9bdc42ff..02b06c5acb 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/ForgeCapabilityHandler.java @@ -4,7 +4,6 @@ import at.petrak.hexcasting.api.addldata.ItemDelegatingEntityIotaHolder; import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; import at.petrak.hexcasting.api.casting.iota.DoubleIota; -import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.api.item.*; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexConfig; @@ -17,17 +16,13 @@ import at.petrak.hexcasting.interop.HexInterop; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EntityType; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.entity.BlockEntityType; import net.neoforged.neoforge.capabilities.Capabilities; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public class ForgeCapabilityHandler { public static void registerCaps(RegisterCapabilitiesEvent evt) { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java index f0f77e1cce..6ed5d4e387 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java @@ -69,7 +69,7 @@ public boolean test(@Nullable ItemStack input) { if (this.stack.getItem() == input.getItem() && this.stack.getDamageValue() == input.getDamageValue()) { ADIotaHolder holder = IXplatAbstractions.INSTANCE.findDataHolder(this.stack); if (holder != null) { - return holder.readIota() != null && holder.writeIota(NullIota.INSTANCE, true); + return holder.readIota() != null && holder.writeIota(new NullIota(), true); } } diff --git a/build.gradle b/build.gradle index e5e64d3744..0f7241d1aa 100644 --- a/build.gradle +++ b/build.gradle @@ -111,17 +111,6 @@ subprojects { it.options.release = 21 } - compileKotlin { - kotlinOptions { - jvmTarget = "21" - } - } - compileTestKotlin { - kotlinOptions { - jvmTarget = "21" - } - } - // Disables Gradle's custom module metadata from being published to maven. The // metadata includes mapped dependencies which are not reasonably consumable by // other mod developers. @@ -145,17 +134,6 @@ allprojects { javadoc.options.addStringOption('Xdoclint:none', '-quiet') } -compileKotlin { - compilerOptions { - jvmTarget = JvmTarget.JVM_21 - } -} -compileTestKotlin { - compilerOptions { - jvmTarget = JvmTarget.JVM_21 - } -} - tasks.register("runAllDatagen") { dependsOn ":Neoforge:runXplatDatagen" dependsOn ":Neoforge:runDatagen" From 17eff39f0f1b140bd7cffa381622a63a75d818f8 Mon Sep 17 00:00:00 2001 From: Noelle Date: Tue, 17 Feb 2026 10:31:26 -0600 Subject: [PATCH 38/51] Addressing more changes; Added new MishapEntityNotFound mishap documentation in Patchouli, among other things --- .../petrak/hexcasting/api/casting/ActionUtils.kt | 12 ++++++------ .../api/casting/eval/MishapEnvironment.java | 2 ++ .../api/casting/eval/env/CircleMishapEnv.java | 5 +++++ .../casting/eval/env/PlayerBasedMishapEnv.java | 5 +++++ .../hexcasting/api/casting/iota/DoubleIota.java | 2 +- .../hexcasting/api/casting/iota/EntityIota.java | 8 ++++++-- .../hexcasting/api/casting/iota/ListIota.java | 4 ++-- .../api/casting/mishaps/MishapDivideByZero.kt | 2 +- ...ityUnavailable.kt => MishapEntityNotFound.kt} | 8 +++++--- .../api/casting/mishaps/MishapInvalidIota.kt | 2 +- .../casting/mishaps/MishapInvalidOperatorArgs.kt | 2 +- .../api/casting/mishaps/MishapInvalidPattern.kt | 2 +- .../mishaps/MishapLocationInWrongDimension.kt | 2 +- .../api/casting/mishaps/MishapNotEnoughArgs.kt | 2 +- .../api/casting/mishaps/MishapStackSize.kt | 2 +- .../petrak/hexcasting/api/item/PigmentItem.java | 4 +--- .../at/petrak/hexcasting/api/mod/HexTags.java | 1 + .../render/WorldlyPatternRenderHelpers.java | 2 -- .../blocks/decoration/BlockHexFallingBlock.java | 16 ---------------- .../casting/actions/raycast/OpBlockRaycast.kt | 2 +- .../assets/hexcasting/lang/en_us.flatten.json5 | 8 ++++++-- .../en_us/entries/casting/mishaps.json | 5 +++++ 22 files changed, 53 insertions(+), 45 deletions(-) rename Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/{MishapEntityUnavailable.kt => MishapEntityNotFound.kt} (68%) delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt index 6f6bb6af2c..5c52f96e05 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt @@ -4,7 +4,7 @@ package at.petrak.hexcasting.api.casting import at.petrak.hexcasting.api.casting.iota.* import at.petrak.hexcasting.api.casting.math.HexPattern -import at.petrak.hexcasting.api.casting.mishaps.MishapEntityUnavailable +import at.petrak.hexcasting.api.casting.mishaps.MishapEntityNotFound import at.petrak.hexcasting.api.casting.mishaps.MishapInvalidIota import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.api.utils.asTranslatedComponent @@ -37,7 +37,7 @@ fun List.getDouble(idx: Int, argc: Int = 0): Double { fun List.getEntity(level: ServerLevel, idx: Int, argc: Int = 0): Entity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - return x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + return x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) } else { throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") } @@ -102,7 +102,7 @@ fun List.getBool(idx: Int, argc: Int = 0): Boolean { fun List.getItemEntity(level: ServerLevel, idx: Int, argc: Int = 0): ItemEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) if (e is ItemEntity) return e } @@ -112,7 +112,7 @@ fun List.getItemEntity(level: ServerLevel, idx: Int, argc: Int = 0): ItemE fun List.getPlayer(level: ServerLevel, idx: Int, argc: Int = 0): ServerPlayer { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) if (e is ServerPlayer) return e } @@ -122,7 +122,7 @@ fun List.getPlayer(level: ServerLevel, idx: Int, argc: Int = 0): ServerPla fun List.getMob(level: ServerLevel, idx: Int, argc: Int = 0): Mob { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) if (e is Mob) return e } @@ -132,7 +132,7 @@ fun List.getMob(level: ServerLevel, idx: Int, argc: Int = 0): Mob { fun List.getLivingEntityButNotArmorStand(level: ServerLevel, idx: Int, argc: Int = 0): LivingEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityUnavailable(x.entityId, x.cachedEntityName) + val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) if (e is LivingEntity && e !is ArmorStand) return e } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/MishapEnvironment.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/MishapEnvironment.java index 5469914454..ba0d87128f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/MishapEnvironment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/MishapEnvironment.java @@ -35,6 +35,8 @@ protected MishapEnvironment(ServerLevel world, @Nullable ServerPlayer caster) { public abstract void blind(int ticks); + public abstract void nauseate(int ticks); + protected void yeetItem(ItemStack stack, Vec3 srcPos, Vec3 delta) { var entity = new ItemEntity( this.world, diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleMishapEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleMishapEnv.java index 407f0eb307..5921a1adcc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleMishapEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleMishapEnv.java @@ -42,4 +42,9 @@ public void removeXp(int amount) { public void blind(int ticks) { } + + @Override + public void nauseate(int ticks) { + + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedMishapEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedMishapEnv.java index 370ba5002a..5846c12c74 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedMishapEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedMishapEnv.java @@ -55,4 +55,9 @@ public void removeXp(int amount) { public void blind(int ticks) { this.caster.addEffect(new MobEffectInstance(MobEffects.BLINDNESS, ticks)); } + + @Override + public void nauseate(int ticks) { + this.caster.addEffect(new MobEffectInstance(MobEffects.CONFUSION, ticks)); + } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java index 229fded62a..d460707b64 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java @@ -25,7 +25,7 @@ public DoubleIota(double d) { } public double getDouble() { - return HexUtils.fixNAN((Double) value); + return HexUtils.fixNAN(value); } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java index 9c4f3bfc49..69c2b23cee 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java @@ -51,13 +51,17 @@ public UUID getEntityId() { public Entity getOrFindEntity(ServerLevel level) { // First, let's try to get it from weak reference var entity = getCachedEntity(); - if (entity != null) + if (entity != null && !entity.isRemoved()) return entity; // Now let's try to fetch it from the world entity = level.getEntity(entityId); // Store in weak reference - if (entity != null) + if (entity != null) { cachedEntity = new WeakReference<>(entity); + if (entity.isRemoved()) + return null; + } + return entity; } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java index 824161c7f5..74ce906a62 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java @@ -110,8 +110,8 @@ public Component display() { // only add a comma between 2 non-patterns (commas don't look good with Inline patterns) // TODO: maybe add a method on IotaType to allow it to opt out of commas? if (i < list.size() - 1) { - var thisIotaNeedsComma = sub.type != PatternIota.TYPE; - var nextIotaNeedsComma = list.getAt(i + 1).type != PatternIota.TYPE; + var thisIotaNeedsComma = sub.type.get() != PatternIota.TYPE; + var nextIotaNeedsComma = list.getAt(i + 1).type.get() != PatternIota.TYPE; var alwaysShowCommas = HexConfig.client() != null && HexConfig.client().alwaysShowListCommas(); if (thisIotaNeedsComma || nextIotaNeedsComma || alwaysShowCommas) out.append(", "); diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt index a7b84287ab..98050ee244 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDivideByZero.kt @@ -17,7 +17,7 @@ class MishapDivideByZero(val operand1: Component, val operand2: Component, val s dyeColor(DyeColor.RED) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(new GarbageIota()) + stack.add(GarbageIota()) env.mishapEnvironment.damage(0.5f) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityNotFound.kt similarity index 68% rename from Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt rename to Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityNotFound.kt index 9ec7232fb9..7ec95d15a3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityUnavailable.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityNotFound.kt @@ -9,12 +9,14 @@ import net.minecraft.network.chat.Component import net.minecraft.world.item.DyeColor import java.util.* -class MishapEntityUnavailable(val entityId: UUID, val entityName: Component?) : Mishap() { +class MishapEntityNotFound(val entityId: UUID, val entityName: Component?) : Mishap() { override fun accentColor(ctx: CastingEnvironment, errorCtx: Context): FrozenPigment = dyeColor(DyeColor.BROWN) - override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) {} + override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { + env.mishapEnvironment.nauseate(3 * 20) + } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = - error("unavailable_entity", entityName?.plainCopy()?.aqua ?: Component.literal(entityId.toString()).withStyle(ChatFormatting.AQUA)) + error("entity_not_found", entityName?.plainCopy()?.aqua ?: Component.literal(entityId.toString()).withStyle(ChatFormatting.AQUA)) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt index 557f4da2bc..2741b1df4d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidIota.kt @@ -21,7 +21,7 @@ class MishapInvalidIota( dyeColor(DyeColor.GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack[stack.size - 1 - reverseIdx] = new GarbageIota(); + stack[stack.size - 1 - reverseIdx] = GarbageIota(); } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component? { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt index 82e8bc8986..a16c083f4c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidOperatorArgs.kt @@ -18,7 +18,7 @@ class MishapInvalidOperatorArgs(val perpetrators: List) : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { for (i in perpetrators.indices) { - stack[stack.size - 1 - i] = new GarbageIota() + stack[stack.size - 1 - i] = GarbageIota() } } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt index f4fc216859..4e9f9a18df 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapInvalidPattern.kt @@ -20,7 +20,7 @@ class MishapInvalidPattern(val pattern: HexPattern?) : Mishap() { override fun resolutionType(ctx: CastingEnvironment) = ResolvedPatternType.INVALID override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(new GarbageIota()) + stack.add(GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component? { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt index 2b5570b8c2..2d0e721838 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapLocationInWrongDimension.kt @@ -13,7 +13,7 @@ class MishapLocationInWrongDimension(val properDimension: ResourceLocation) : Mi dyeColor(DyeColor.MAGENTA) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - stack.add(new GarbageIota()) + stack.add(GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt index e62bab1fcd..646f42c927 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapNotEnoughArgs.kt @@ -11,7 +11,7 @@ class MishapNotEnoughArgs(val expected: Int, val got: Int) : Mishap() { dyeColor(DyeColor.LIGHT_GRAY) override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { - repeat(expected - got) { stack.add(new GarbageIota()) } + repeat(expected - got) { stack.add(GarbageIota()) } } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt index 59cecdd993..571e39bcd9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt @@ -16,7 +16,7 @@ class MishapStackSize() : Mishap() { override fun execute(env: CastingEnvironment, errorCtx: Context, stack: MutableList) { stack.clear() - stack.add(new GarbageIota()) + stack.add(GarbageIota()) } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java index 7c6f979f23..807f69ad5d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java @@ -18,6 +18,4 @@ @ApiStatus.OverrideOnly public interface PigmentItem { ColorProvider provideColor(ItemStack stack, UUID owner); -} - - +} \ No newline at end of file diff --git a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java index cfeda63b4a..bb33d7d8fa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/mod/HexTags.java @@ -54,6 +54,7 @@ public static final class Blocks { public static final TagKey CHEAP_TO_BREAK_BLOCK = create("cheap_to_break_block"); + //blocks unbreakable by Break Block public static final TagKey HEX_UNBREAKABLE = create("hex_unbreakable"); public static TagKey create(String name) { diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index e7ad9b9d69..1d2903932f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -53,8 +53,6 @@ public static void renderPatternForScroll(HexPattern pattern, EntityWallScroll s { ps.pushPose(); ps.translate(-blockSize / 2f, -blockSize / 2f, 1f / 32f); - // there's almost certainly a better way to do this, but we're just flipping the y and z axes to fix normals - // no need for this anymore :D renderPattern(pattern, showStrokeOrder ? READABLE_SCROLL_SETTINGS : SCROLL_SETTINGS, showStrokeOrder ? PatternColors.READABLE_SCROLL_COLORS : PatternColors.DEFAULT_PATTERN_COLOR, scroll.getPos().hashCode(), ps, bufSource, null, null, light, blockSize); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java deleted file mode 100644 index 820077f8f7..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFallingBlock.java +++ /dev/null @@ -1,16 +0,0 @@ -package at.petrak.hexcasting.common.blocks.decoration; - -import com.mojang.serialization.MapCodec; -import net.minecraft.world.level.block.FallingBlock; -import net.minecraft.world.level.block.state.BlockBehaviour; - -public class BlockHexFallingBlock extends FallingBlock { - public BlockHexFallingBlock(Properties props) { - super(props); - } - public static final MapCodec CODEC = BlockBehaviour.simpleCodec(BlockHexFallingBlock::new); - @Override - protected MapCodec codec() { - return CODEC; - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt index 34bd19b8aa..33a2e990eb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/raycast/OpBlockRaycast.kt @@ -39,7 +39,7 @@ object OpBlockRaycast : ConstMediaAction { // TODO some action that has the "weird" version? blockHitResult.blockPos.asActionResult } else { - listOf(NullIota.INSTANCE) + listOf(NullIota()) } } } diff --git a/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 b/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 index 640a34d95f..2a6dccbe6a 100644 --- a/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 +++ b/Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5 @@ -1022,6 +1022,7 @@ wrong_dimension: "cannot see %s from %s", entity_too_far: "%s is out of range", + entity_not_found: "%s was not found, either dead or unloaded", immune_entity: "cannot alter %s", eval_too_much: "Evaluated too many patterns", no_item: "needs %s but got nothing", @@ -1491,10 +1492,13 @@ "true_name.title": "Transgress Other", true_name: "I attempted to $(l:patterns/readwrite#hexcasting:write)$(action)save a reference/$ to another player to a permanent medium.$(br2)Causes black sparks, and robs me of my sight for approximately one minute.", - + + "entity_not_found.title": "Entity Not Found", + entity_not_found: "I attempted to affect an entity that doesn't exist. Two cases for this; one is if the entity is simply dead. The other, and more peculiar to me, is if it is unable to be \"observed\" from afar.$(br2)Causes brown sparks, and causes me to feel sick for a moment, as if I had stood up too fast.", + "disabled.title": "Disallowed Action", disabled: "I tried to cast an action that has been disallowed by a server administrator.$(br2)Causes black sparks.", - + "other.title": "Catastrophic Failure", other: "A bug in the mod caused an iota of an invalid type or otherwise caused the spell to crash. $(l:https://github.com/gamma-delta/HexMod/issues)Please open a bug report!/$$(br2)Causes black sparks.", }, diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json index 5a01a51556..68df59159b 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json @@ -83,6 +83,11 @@ "title": "hexcasting.page.mishaps.true_name.title", "text": "hexcasting.page.mishaps.true_name" }, + { + "type": "patchouli:text", + "title": "hexcasting.page.mishaps.entity_not_found.title", + "text": "hexcasting.page.mishaps.entity_not_found" + }, { "type": "patchouli:text", "title": "hexcasting.page.mishaps.disabled.title", From 582f901d6df57e914e49be897091ee57eaa43267 Mon Sep 17 00:00:00 2001 From: Noelle Date: Tue, 17 Feb 2026 11:04:49 -0600 Subject: [PATCH 39/51] Also, optimizing imports --- .../java/at/petrak/hexcasting/api/HexAPI.java | 4 ---- .../hexcasting/api/addldata/ADIotaHolder.java | 3 --- .../ItemDelegatingEntityIotaHolder.java | 2 -- .../api/advancements/OvercastTrigger.java | 6 ++++-- .../api/advancements/SpendMediaTrigger.java | 5 +++-- .../hexcasting/api/casting/ParticleSpray.kt | 1 - .../api/casting/arithmetic/operator/Operator.kt | 2 -- .../api/casting/castables/SpellAction.kt | 2 +- .../circles/BlockEntityAbstractImpetus.java | 1 - .../api/casting/eval/CastingEnvironment.java | 1 - .../api/casting/eval/env/CircleCastEnv.java | 1 - .../casting/eval/env/PlayerBasedCastEnv.java | 4 ---- .../api/casting/eval/env/StaffCastEnv.java | 6 ++++-- .../api/casting/eval/vm/CastingImage.kt | 13 ++----------- .../api/casting/eval/vm/ContinuationFrame.kt | 6 ------ .../api/casting/eval/vm/FrameFinishEval.kt | 2 -- .../api/casting/iota/BooleanIota.java | 4 ---- .../api/casting/iota/ContinuationIota.java | 4 ---- .../hexcasting/api/casting/iota/DoubleIota.java | 3 --- .../api/casting/iota/GarbageIota.java | 1 - .../hexcasting/api/casting/iota/Iota.java | 9 --------- .../hexcasting/api/casting/iota/IotaType.java | 8 -------- .../hexcasting/api/casting/iota/ListIota.java | 1 - .../hexcasting/api/casting/iota/NullIota.java | 5 ----- .../api/casting/iota/PatternIota.java | 5 ----- .../hexcasting/api/casting/iota/Vec3Iota.java | 6 ------ .../hexcasting/api/casting/math/HexDir.kt | 1 - .../hexcasting/api/casting/math/HexPattern.kt | 5 ----- .../hexcasting/api/casting/mishaps/Mishap.kt | 1 - .../api/casting/mishaps/MishapBadBlock.kt | 1 - .../api/casting/mishaps/MishapBadOffhandItem.kt | 1 - .../casting/mishaps/MishapDisallowedSpell.kt | 2 +- .../casting/mishaps/MishapEntityTooFarAway.kt | 1 - .../api/casting/mishaps/MishapImmuneEntity.kt | 2 -- .../api/casting/mishaps/MishapOthersName.kt | 1 - .../api/casting/mishaps/MishapStackSize.kt | 1 - .../mishaps/circle/MishapNoSpellCircle.kt | 1 - .../api/client/ScryingLensOverlayRegistry.java | 1 - .../hexcasting/api/item/IotaHolderItem.java | 6 ------ .../petrak/hexcasting/api/item/PigmentItem.java | 3 --- .../petrak/hexcasting/api/item/VariantItem.java | 1 - .../hexcasting/api/pigment/FrozenPigment.java | 2 -- .../at/petrak/hexcasting/api/utils/HexUtils.kt | 6 ------ .../at/petrak/hexcasting/api/utils/MathUtils.kt | 3 ++- .../at/petrak/hexcasting/api/utils/NBTHelper.kt | 3 --- .../hexcasting/client/RegisterClientStuff.java | 3 --- .../client/entity/WallScrollRenderer.java | 1 - .../hexcasting/client/gui/GuiSpellcasting.kt | 1 - .../client/render/HexAdditionalRenderers.java | 1 - .../client/render/PatternTextureManager.java | 1 - .../hexcasting/client/render/RenderLib.kt | 6 +----- .../client/render/ScryingLensOverlays.java | 1 - .../render/WorldlyPatternRenderHelpers.java | 2 -- .../be/BlockEntityQuenchedAllayRenderer.java | 1 - .../client/render/shader/HexShaders.java | 1 - .../common/blocks/BlockConjuredLight.java | 1 - .../blocks/akashic/BlockAkashicRecord.java | 2 -- .../akashic/BlockEntityAkashicBookshelf.java | 1 - .../blocks/circles/BlockEmptyImpetus.java | 1 - .../common/blocks/circles/BlockSlate.java | 7 +------ .../directrix/BlockBooleanDirectrix.java | 1 - .../circles/directrix/BlockEmptyDirectrix.java | 1 - .../directrix/BlockRedstoneDirectrix.java | 1 - .../impetuses/BlockEntityLookingImpetus.java | 1 - .../impetuses/BlockEntityRedstoneImpetus.java | 2 -- .../decoration/BlockAmethystDirectional.java | 2 -- .../blocks/decoration/BlockHexFenceGate.java | 1 - .../common/blocks/decoration/BlockSconce.java | 6 +++--- .../common/casting/actions/eval/OpThanos.kt | 1 - .../common/casting/actions/local/OpPushLocal.kt | 1 - .../actions/spells/OpMakePackagedSpell.kt | 6 +++--- .../casting/actions/spells/great/OpTeleport.kt | 5 ----- .../common/casting/arithmetic/BoolArithmetic.kt | 3 ++- .../casting/arithmetic/ListSetArithmetic.kt | 2 +- .../casting/arithmetic/Vec3Arithmetic.java | 6 ++++-- .../casting/arithmetic/operator/OperatorLog.kt | 1 - .../arithmetic/operator/list/OperatorAppend.kt | 3 +-- .../arithmetic/operator/list/OperatorIndex.kt | 6 +++--- .../arithmetic/operator/list/OperatorIndexOf.kt | 3 +-- .../arithmetic/operator/list/OperatorRemove.kt | 4 ++-- .../arithmetic/operator/list/OperatorReplace.kt | 4 ++-- .../arithmetic/operator/list/OperatorSlice.kt | 6 +++--- .../arithmetic/operator/list/OperatorUnCons.kt | 1 - .../operator/list/OperatorUnappend.kt | 3 +-- .../arithmetic/operator/list/OperatorUnique.kt | 3 +-- .../arithmetic/operator/vec/OperatorPack.java | 1 - .../arithmetic/operator/vec/OperatorUnpack.java | 1 - .../operator/vec/OperatorVec3Delegating.java | 11 +++++------ .../command/ListPerWorldPatternsCommand.java | 6 ------ .../common/command/PatternResKeyArgument.java | 4 ---- .../common/entities/EntityWallScroll.java | 6 ------ .../hexcasting/common/impl/HexAPIImpl.java | 4 ---- .../common/items/ItemJewelerHammer.java | 2 -- .../hexcasting/common/items/ItemLens.java | 7 ------- .../common/items/ItemLoreFragment.java | 1 - .../hexcasting/common/items/ItemStaff.java | 1 - .../common/items/armor/ItemRobes.java | 1 - .../common/items/magic/ItemAncientCypher.java | 6 ------ .../items/magic/ItemCreativeUnlocker.java | 1 - .../common/items/magic/ItemMediaBattery.java | 4 ---- .../common/items/magic/ItemMediaHolder.java | 4 ---- .../common/items/magic/ItemPackagedHex.java | 6 ------ .../items/pigment/ItemAmethystPigment.java | 1 - .../common/items/pigment/ItemUUIDPigment.java | 1 - .../common/items/storage/ItemAbacus.java | 5 ----- .../common/items/storage/ItemFocus.java | 5 ----- .../common/items/storage/ItemScroll.java | 15 ++++----------- .../common/items/storage/ItemSlate.java | 8 -------- .../common/items/storage/ItemSpellbook.java | 5 ----- .../common/items/storage/ItemThoughtKnot.java | 4 ---- .../petrak/hexcasting/common/lib/HexBlocks.java | 5 ++++- .../hexcasting/common/lib/HexCreativeTabs.java | 2 -- .../common/lib/HexFeatureConfigs.java | 1 - .../petrak/hexcasting/common/lib/HexItems.java | 4 ++-- .../hexcasting/common/lib/HexLootFunctions.java | 2 +- .../hexcasting/common/lib/HexMobEffects.java | 7 ------- .../hexcasting/common/lib/HexPotions.java | 1 - .../hexcasting/common/lib/HexRegistries.java | 2 +- .../hexcasting/common/lib/hex/HexIotaTypes.java | 1 - .../common/loot/AddHexToAncientCypherFunc.java | 10 +--------- .../loot/AddPerWorldPatternToScrollFunc.java | 6 +----- .../common/msgs/MsgCastParticleS2C.java | 5 ----- .../common/msgs/MsgClearSpiralPatternsS2C.java | 7 ------- .../common/msgs/MsgNewSpellPatternC2S.java | 4 ---- .../common/msgs/MsgNewSpellPatternS2C.java | 11 ----------- .../common/msgs/MsgNewSpiralPatternsS2C.java | 6 ------ .../common/msgs/MsgNewWallScrollS2C.java | 8 -------- .../common/msgs/MsgOpenSpellGuiS2C.java | 7 ------- .../msgs/MsgRecalcWallScrollDisplayS2C.java | 9 --------- .../common/msgs/MsgShiftScrollC2S.java | 13 ------------- .../particles/ConjureParticleOptions.java | 5 ----- .../common/recipe/BrainsweepRecipe.java | 4 ++-- .../common/recipe/SealThingsRecipe.java | 3 --- .../brainsweep/BrainsweepeeIngredient.java | 5 ----- .../brainsweep/EntityTypeIngredient.java | 4 ---- .../brainsweep/VillagerIngredient.java | 5 ----- .../hexcasting/datagen/HexAdvancements.java | 1 - .../hexcasting/datagen/HexLootTables.java | 6 ------ .../datagen/recipe/HexplatRecipes.java | 8 +++++--- .../builders/BrainsweepRecipeBuilder.java | 2 +- .../builders/CreateCrushingRecipeBuilder.java | 4 ---- .../FarmersDelightCuttingRecipeBuilder.java | 7 ------- .../datagen/tag/HexBlockTagProvider.java | 1 - .../datagen/tag/HexItemTagProvider.java | 4 ---- .../interop/patchouli/BrainsweepProcessor.java | 1 + .../patchouli/CustomComponentTooltip.java | 1 - .../patchouli/MultiCraftingProcessor.java | 1 - .../interop/utils/PatternDrawingUtil.java | 1 - .../hexcasting/mixin/MixinWanderingTrader.java | 17 +++++++---------- .../hexcasting/xplat/IXplatAbstractions.java | 2 +- .../hexcasting/fabric/FabricHexConfig.java | 1 - .../hexcasting/fabric/FabricHexInitializer.kt | 9 +-------- .../petrak/hexcasting/fabric/cc/CCAltiora.java | 4 ++-- .../hexcasting/fabric/cc/CCBrainswept.java | 7 +++---- .../fabric/cc/CCClientCastingStack.java | 4 ++-- .../hexcasting/fabric/cc/CCFavoredPigment.java | 4 ++-- .../petrak/hexcasting/fabric/cc/CCFlight.java | 2 +- .../petrak/hexcasting/fabric/cc/CCPatterns.java | 4 ++-- .../petrak/hexcasting/fabric/cc/CCSentinel.java | 4 ++-- .../hexcasting/fabric/cc/CCStaffcastImage.java | 4 ++-- .../fabric/cc/HexCardinalComponents.java | 11 +++++------ .../fabric/cc/adimpl/CCEntityIotaHolder.java | 1 - .../fabric/cc/adimpl/CCHexHolder.java | 3 +-- .../fabric/cc/adimpl/CCItemIotaHolder.java | 4 +--- .../fabric/cc/adimpl/CCMediaHolder.java | 2 +- .../hexcasting/fabric/cc/adimpl/CCPigment.java | 3 +-- .../fabric/cc/adimpl/CCVariantItem.java | 4 +--- .../datagen/HexFabricConditionsBuilder.java | 1 - .../fabric/datagen/HexFabricDataGenerators.java | 2 -- .../interop/emi/BrainsweepeeEmiStack.java | 2 -- .../fabric/interop/emi/EmiPhialRecipe.java | 1 - .../fabric/interop/emi/HexEMIPlugin.java | 1 - .../fabric/loot/FabricHexLootModJankery.java | 2 +- .../mixin/client/FabricModelManagerMixin.java | 3 --- .../fabric/network/FabricPacketHandler.java | 3 --- .../recipe/FabricModConditionalIngredient.java | 6 ------ .../fabric/recipe/FabricUnsealedIngredient.java | 12 ------------ .../hexcasting/fabric/xplat/FabricRegister.java | 3 --- .../fabric/xplat/FabricXplatImpl.java | 1 - .../forge/ForgeHexClientInitializer.java | 2 -- .../hexcasting/forge/ForgeHexInitializer.java | 5 ++++- .../forge/cap/adimpl/CapEntityIotaHolder.java | 2 -- .../forge/cap/adimpl/CapItemHexHolder.java | 2 +- .../forge/cap/adimpl/CapItemIotaHolder.java | 4 +--- .../forge/cap/adimpl/CapStaticIotaHolder.java | 3 --- .../forge/datagen/ForgeHexLootModGen.java | 2 +- .../datagen/xplat/HexBlockStatesAndModels.java | 1 - .../forge/datagen/xplat/HexItemModels.java | 4 +--- .../interop/jei/BrainsweepRecipeCategory.java | 4 ---- .../forge/interop/jei/PhialRecipeCategory.java | 1 - .../forge/lib/ForgeHexIngredientTypes.java | 7 ------- .../hexcasting/forge/lib/ForgeHexLootMods.java | 4 +--- .../recipe/ForgeModConditionalIngredient.java | 9 --------- .../forge/recipe/ForgeUnsealedIngredient.java | 12 ------------ .../hexcasting/forge/xplat/ForgeXplatImpl.java | 2 +- build.gradle | 1 - 196 files changed, 120 insertions(+), 606 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java index 37a1f59371..a9745afb98 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/HexAPI.java @@ -12,21 +12,17 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; -import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.ArmorMaterial; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.phys.Vec3; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.Collections; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java index 0ab8836c9f..be2277fe06 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ADIotaHolder.java @@ -1,9 +1,6 @@ package at.petrak.hexcasting.api.addldata; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.Nullable; public interface ADIotaHolder { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java index 8bad581fcb..af2198eb1f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/addldata/ItemDelegatingEntityIotaHolder.java @@ -3,8 +3,6 @@ import at.petrak.hexcasting.api.casting.iota.Iota; import at.petrak.hexcasting.common.entities.EntityWallScroll; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.decoration.ItemFrame; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.item.ItemStack; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java index d98f9ca773..84c65cfd2c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/OvercastTrigger.java @@ -1,10 +1,12 @@ package at.petrak.hexcasting.api.advancements; import at.petrak.hexcasting.api.mod.HexConfig; -import com.google.gson.JsonObject; import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.advancements.critereon.*; +import net.minecraft.advancements.critereon.ContextAwarePredicate; +import net.minecraft.advancements.critereon.EntityPredicate; +import net.minecraft.advancements.critereon.MinMaxBounds; +import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java index 978e64b48e..be9290bf0a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/advancements/SpendMediaTrigger.java @@ -1,9 +1,10 @@ package at.petrak.hexcasting.api.advancements; -import com.google.gson.JsonObject; import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.advancements.critereon.*; +import net.minecraft.advancements.critereon.ContextAwarePredicate; +import net.minecraft.advancements.critereon.EntityPredicate; +import net.minecraft.advancements.critereon.SimpleCriterionTrigger; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt index f9d9eacef1..86b70869a3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ParticleSpray.kt @@ -4,7 +4,6 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.common.msgs.MsgCastParticleS2C import at.petrak.hexcasting.xplat.IXplatAbstractions import at.petrak.paucal.api.PaucalCodecs -import io.netty.buffer.ByteBuf import net.minecraft.network.RegistryFriendlyByteBuf import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/arithmetic/operator/Operator.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/arithmetic/operator/Operator.kt index 8804e0d628..6d0ec41d01 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/arithmetic/operator/Operator.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/arithmetic/operator/Operator.kt @@ -8,8 +8,6 @@ import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.mishaps.Mishap -import at.petrak.hexcasting.common.lib.hex.HexEvalSounds -import java.util.function.Consumer abstract class Operator /** diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt index 3405830d62..87a3bb3bcc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/castables/SpellAction.kt @@ -8,10 +8,10 @@ import at.petrak.hexcasting.api.casting.eval.sideeffects.OperatorSideEffect import at.petrak.hexcasting.api.casting.eval.vm.CastingImage import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.mishaps.Mishap import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughMedia import at.petrak.hexcasting.common.lib.hex.HexEvalSounds -import at.petrak.hexcasting.api.casting.mishaps.Mishap import net.minecraft.nbt.CompoundTag interface SpellAction : Action { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java index 85de2c23fc..66a684e875 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/circles/BlockEntityAbstractImpetus.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.block.HexBlockEntity; import at.petrak.hexcasting.api.block.circle.BlockCircleComponent; -import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.api.utils.MediaHelper; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java index d47c19f675..3573c003c9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/CastingEnvironment.java @@ -12,7 +12,6 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexAttributes; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java index e453ec221b..333deaa813 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/CircleCastEnv.java @@ -15,7 +15,6 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.common.lib.HexAttributes; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java index 8b816825b7..adc2eb444f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/PlayerBasedCastEnv.java @@ -12,25 +12,21 @@ import at.petrak.hexcasting.api.mod.HexConfig; import at.petrak.hexcasting.api.mod.HexStatistics; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.utils.MediaHelper; import at.petrak.hexcasting.common.lib.HexAttributes; import at.petrak.hexcasting.common.lib.HexDamageTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.BlockPos; -import net.minecraft.core.Holder; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameType; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; import java.util.List; import java.util.function.Predicate; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java index 537c146b71..d91d1ed86f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/env/StaffCastEnv.java @@ -11,9 +11,11 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.mod.HexStatistics; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.common.msgs.*; +import at.petrak.hexcasting.common.msgs.MsgClearSpiralPatternsS2C; +import at.petrak.hexcasting.common.msgs.MsgNewSpellPatternC2S; +import at.petrak.hexcasting.common.msgs.MsgNewSpellPatternS2C; +import at.petrak.hexcasting.common.msgs.MsgNewSpiralPatternsS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.network.chat.Component; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt index da06cdd4ac..426fd8adea 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt @@ -1,25 +1,16 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.HexAPI -import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota -import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota.Companion.TAG_ESCAPED -import at.petrak.hexcasting.api.casting.eval.vm.CastingImage.ParenthesizedIota.Companion.TAG_IOTAS import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType -import at.petrak.hexcasting.api.casting.iota.ListIota -import at.petrak.hexcasting.api.utils.* +import at.petrak.hexcasting.api.utils.getOrCreateCompound +import at.petrak.hexcasting.api.utils.putCompound import com.mojang.serialization.Codec import com.mojang.serialization.codecs.RecordCodecBuilder import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.ListTag -import net.minecraft.nbt.Tag import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec -import net.minecraft.server.level.ServerLevel -import net.minecraft.util.ExtraCodecs import net.minecraft.world.entity.Entity -import java.util.Optional -import kotlin.jvm.optionals.getOrNull /** * The state of a casting VM, containing the stack and all diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt index ff25b70b57..476cd22a56 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/ContinuationFrame.kt @@ -1,15 +1,11 @@ package at.petrak.hexcasting.api.casting.eval.vm -import at.petrak.hexcasting.api.casting.SpellList import at.petrak.hexcasting.api.casting.eval.CastResult -import at.petrak.hexcasting.api.casting.iota.GarbageIota import at.petrak.hexcasting.api.casting.iota.Iota -import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.common.lib.HexRegistries import at.petrak.hexcasting.common.lib.hex.HexContinuationTypes import at.petrak.hexcasting.xplat.IXplatAbstractions import com.mojang.serialization.Codec -import com.mojang.serialization.DataResult import com.mojang.serialization.MapCodec import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.Tag @@ -18,8 +14,6 @@ import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec import net.minecraft.resources.ResourceLocation import net.minecraft.server.level.ServerLevel -import java.util.function.Function -import java.util.function.Supplier /** * A single frame of evaluation during the execution of a spell. diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt index ab41e8b436..00b387d487 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/FrameFinishEval.kt @@ -4,10 +4,8 @@ import at.petrak.hexcasting.api.casting.eval.CastResult import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.NullIota -import at.petrak.hexcasting.api.utils.NBTBuilder import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import com.mojang.serialization.MapCodec -import net.minecraft.nbt.CompoundTag import net.minecraft.network.RegistryFriendlyByteBuf import net.minecraft.network.codec.StreamCodec import net.minecraft.server.level.ServerLevel diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java index 84cfdf6976..f1a4e90a06 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/BooleanIota.java @@ -1,13 +1,9 @@ package at.petrak.hexcasting.api.casting.iota; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; -import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.ByteTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java index 7eca19aa6d..1c688cf4d2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ContinuationIota.java @@ -4,14 +4,10 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation; -import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.StreamCodec; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java index d460707b64..76a4901890 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/DoubleIota.java @@ -11,9 +11,6 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.server.level.ServerLevel; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; public class DoubleIota extends Iota { public static final double TOLERANCE = 0.0001; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java index c618d32ca1..d623b51643 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/GarbageIota.java @@ -3,7 +3,6 @@ import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.StreamCodec; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java index 5f2b33455b..25c517d975 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Iota.java @@ -9,26 +9,17 @@ import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.casting.mishaps.Mishap; import at.petrak.hexcasting.api.casting.mishaps.MishapUnescapedValue; -import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import com.mojang.serialization.Codec; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.Font; -import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.Tag; -import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.ComponentSerialization; -import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.server.level.ServerLevel; import net.minecraft.util.FormattedCharSequence; -import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.Objects; import java.util.function.Supplier; public abstract class Iota { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index 2ebbcf455d..7bcdff1afe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.api.casting.iota; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; @@ -8,17 +7,10 @@ import com.mojang.serialization.DataResult; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.client.gui.Font; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.ComponentSerialization; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.FormattedCharSequence; import java.util.List; import java.util.function.Function; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java index 74ce906a62..d278c93b5f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/ListIota.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.casting.SpellList; import at.petrak.hexcasting.api.mod.HexConfig; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java index de64be3ba0..516dad94ca 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/NullIota.java @@ -3,14 +3,9 @@ import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.server.level.ServerLevel; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; /** * An iota with no data associated with it. diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java index d3700b676b..b01bd01210 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/PatternIota.java @@ -15,21 +15,16 @@ import at.petrak.hexcasting.api.casting.mishaps.MishapInvalidPattern; import at.petrak.hexcasting.api.casting.mishaps.MishapUnenlightened; import at.petrak.hexcasting.api.mod.HexTags; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.lib.hex.HexEvalSounds; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.interop.inline.InlinePatternData; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; -import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java index 8836869fce..14cbc48be4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/Vec3Iota.java @@ -2,20 +2,14 @@ import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; -import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.LongArrayTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.server.level.ServerLevel; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt index b11ba185a0..b59df73cca 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexDir.kt @@ -3,7 +3,6 @@ package at.petrak.hexcasting.api.casting.math import at.petrak.hexcasting.api.utils.getSafe import com.mojang.serialization.Codec import io.netty.buffer.ByteBuf -import net.minecraft.network.RegistryFriendlyByteBuf import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt index 97bcca7a4f..98e5fb2af5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/math/HexPattern.kt @@ -1,18 +1,13 @@ package at.petrak.hexcasting.api.casting.math -import at.petrak.hexcasting.api.utils.NBTBuilder import at.petrak.hexcasting.api.utils.coordToPx import at.petrak.hexcasting.api.utils.findCenter -import at.petrak.hexcasting.api.utils.getSafe import com.mojang.serialization.Codec import com.mojang.serialization.codecs.RecordCodecBuilder -import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.Tag import net.minecraft.network.RegistryFriendlyByteBuf import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec import net.minecraft.world.phys.Vec2 -import kotlin.jvm.Throws /** * Sequence of angles to define a pattern traced. diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/Mishap.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/Mishap.kt index 685b3e8984..54f7e94c14 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/Mishap.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/Mishap.kt @@ -18,7 +18,6 @@ import net.minecraft.world.entity.LivingEntity import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack import net.minecraft.world.phys.Vec3 -import java.lang.RuntimeException abstract class Mishap : RuntimeException() { /** Mishaps spray half-red, half-this-color. */ diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBlock.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBlock.kt index b97a1b72f6..349e8f64cf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBlock.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadBlock.kt @@ -8,7 +8,6 @@ import at.petrak.hexcasting.api.utils.asTranslatedComponent import net.minecraft.core.BlockPos import net.minecraft.network.chat.Component import net.minecraft.world.item.DyeColor -import net.minecraft.world.level.Explosion import net.minecraft.world.level.Level import net.minecraft.world.phys.Vec3 diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadOffhandItem.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadOffhandItem.kt index d35104dab4..6a9e0dafa3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadOffhandItem.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadOffhandItem.kt @@ -5,7 +5,6 @@ import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.api.utils.asTranslatedComponent import net.minecraft.network.chat.Component -import net.minecraft.world.InteractionHand import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDisallowedSpell.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDisallowedSpell.kt index c55772107e..e60dc5b6bc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDisallowedSpell.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapDisallowedSpell.kt @@ -5,8 +5,8 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.api.utils.asTranslatedComponent -import net.minecraft.resources.ResourceLocation; import net.minecraft.network.chat.Component +import net.minecraft.resources.ResourceLocation import net.minecraft.world.item.DyeColor class MishapDisallowedSpell(val type: String, val actionKey: ResourceLocation?) : Mishap() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt index 5f196d376f..d78bb5c187 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt @@ -3,7 +3,6 @@ package at.petrak.hexcasting.api.casting.mishaps import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment -import at.petrak.hexcasting.api.utils.aqua import net.minecraft.network.chat.Component import net.minecraft.world.entity.Entity import net.minecraft.world.item.DyeColor diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt index ca2622947a..b67f4de11d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt @@ -4,8 +4,6 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment import at.petrak.hexcasting.api.utils.aqua -import net.minecraft.core.registries.Registries -import net.minecraft.network.chat.Component import net.minecraft.world.entity.Entity import net.minecraft.world.item.DyeColor diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt index 629ed69189..83366e6501 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt @@ -3,7 +3,6 @@ package at.petrak.hexcasting.api.casting.mishaps import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.EntityIota import at.petrak.hexcasting.api.casting.iota.Iota -import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.pigment.FrozenPigment import net.minecraft.server.level.ServerLevel import net.minecraft.world.entity.player.Player diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt index 571e39bcd9..9c8a93eb4c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapStackSize.kt @@ -5,7 +5,6 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType import at.petrak.hexcasting.api.casting.iota.GarbageIota import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment -import at.petrak.hexcasting.common.lib.HexDamageTypes import net.minecraft.world.item.DyeColor class MishapStackSize() : Mishap() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt index b1615fe604..459f9e3dd8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/circle/MishapNoSpellCircle.kt @@ -9,7 +9,6 @@ import net.minecraft.server.level.ServerPlayer import net.minecraft.world.entity.player.Player import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack -import net.minecraft.world.item.enchantment.EnchantmentHelper import net.minecraft.world.item.enchantment.Enchantments class MishapNoSpellCircle : Mishap() { diff --git a/Common/src/main/java/at/petrak/hexcasting/api/client/ScryingLensOverlayRegistry.java b/Common/src/main/java/at/petrak/hexcasting/api/client/ScryingLensOverlayRegistry.java index da72b78b42..3770d7fe5b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/client/ScryingLensOverlayRegistry.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/client/ScryingLensOverlayRegistry.java @@ -4,7 +4,6 @@ import com.mojang.datafixers.util.Pair; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java index db7e60859c..016c0b51f7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java @@ -3,16 +3,10 @@ import at.petrak.hexcasting.api.casting.iota.Iota; import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.utils.HexUtils; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.ClientTickCounter; import at.petrak.hexcasting.common.lib.HexDataComponents; -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import net.minecraft.ChatFormatting; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtUtils; import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerLevel; import net.minecraft.util.Mth; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java index 807f69ad5d..4c53fed7f9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/PigmentItem.java @@ -1,9 +1,6 @@ package at.petrak.hexcasting.api.item; import at.petrak.hexcasting.api.pigment.ColorProvider; -import com.mojang.serialization.Codec; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.entity.animal.Pig; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.ApiStatus; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java index d242fe9edb..68c7d33805 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.api.item; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.world.item.ItemStack; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java index 63b133295c..f1ec83210e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/pigment/FrozenPigment.java @@ -5,9 +5,7 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.Util; -import net.minecraft.core.HolderLookup; import net.minecraft.core.UUIDUtil; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.StreamCodec; import net.minecraft.world.item.ItemStack; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt index ad323acaf8..0973ab74bf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt @@ -2,12 +2,8 @@ package at.petrak.hexcasting.api.utils -import at.petrak.hexcasting.api.casting.iota.Iota -import at.petrak.hexcasting.api.casting.iota.IotaType -import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.casting.math.HexCoord import net.minecraft.ChatFormatting -import net.minecraft.advancements.AdvancementHolder import net.minecraft.core.HolderLookup import net.minecraft.core.Registry import net.minecraft.nbt.* @@ -16,7 +12,6 @@ import net.minecraft.network.chat.MutableComponent import net.minecraft.network.chat.Style import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation -import net.minecraft.server.ServerAdvancementManager import net.minecraft.tags.TagKey import net.minecraft.world.InteractionHand import net.minecraft.world.item.ItemStack @@ -24,7 +19,6 @@ import net.minecraft.world.phys.Vec2 import net.minecraft.world.phys.Vec3 import java.lang.ref.WeakReference import java.util.* -import kotlin.jvm.optionals.getOrNull import kotlin.math.absoluteValue import kotlin.math.max import kotlin.math.min diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/MathUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/MathUtils.kt index 84448cc394..e49cbf6fc5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/MathUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/MathUtils.kt @@ -2,7 +2,8 @@ package at.petrak.hexcasting.api.utils import org.joml.Quaternionf import org.joml.Vector3f -import kotlin.math.* +import kotlin.math.cos +import kotlin.math.sin object MathUtils { @JvmStatic diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt index 15095adb09..c9fb717178 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/NBTHelper.kt @@ -3,11 +3,8 @@ package at.petrak.hexcasting.api.utils import net.minecraft.advancements.AdvancementHolder -import net.minecraft.core.component.DataComponents import net.minecraft.nbt.* import net.minecraft.server.ServerAdvancementManager -import net.minecraft.world.item.ItemStack -import net.minecraft.world.item.component.CustomData import java.util.* import kotlin.jvm.optionals.getOrNull diff --git a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java index 7c6ca4973b..2a0e164aa8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java @@ -1,11 +1,9 @@ package at.petrak.hexcasting.client; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.item.MediaHolderItem; import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.misc.MediaConstants; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.entity.WallScrollRenderer; import at.petrak.hexcasting.client.render.GaslightingTracker; import at.petrak.hexcasting.client.render.ScryingLensOverlays; @@ -32,7 +30,6 @@ import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.client.resources.model.ModelResourceLocation; -import net.minecraft.core.Registry; import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceLocation; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java index 9e88bcf384..a04dd55c08 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/entity/WallScrollRenderer.java @@ -14,7 +14,6 @@ import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; -import org.joml.Matrix3f; import org.joml.Matrix4f; import static at.petrak.hexcasting.api.HexAPI.modLoc; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt index b45e4923ac..cd2a4200b5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/gui/GuiSpellcasting.kt @@ -29,7 +29,6 @@ import net.minecraft.client.gui.screens.Screen import net.minecraft.client.renderer.GameRenderer import net.minecraft.client.resources.sounds.SimpleSoundInstance import net.minecraft.client.resources.sounds.SoundInstance -import net.minecraft.core.Holder import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.NbtOps import net.minecraft.sounds.SoundSource diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java index 2d8c543d03..c2c0c4e098 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java @@ -20,7 +20,6 @@ import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.player.LocalPlayer; import net.minecraft.client.renderer.GameRenderer; -import net.minecraft.core.Holder; import net.minecraft.locale.Language; import net.minecraft.network.chat.FormattedText; import net.minecraft.network.chat.Style; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternTextureManager.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternTextureManager.java index b59e1e8e75..34f9d66a5f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternTextureManager.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternTextureManager.java @@ -10,7 +10,6 @@ import net.minecraft.world.phys.Vec2; import java.awt.geom.Line2D; -import java.util.List; import java.util.*; import java.util.concurrent.*; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt index 3263d314cb..64350aa680 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/RenderLib.kt @@ -7,11 +7,7 @@ import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.api.utils.TAU import at.petrak.hexcasting.client.ClientTickCounter import at.petrak.hexcasting.client.gui.GuiSpellcasting -import com.mojang.blaze3d.vertex.BufferUploader -import com.mojang.blaze3d.vertex.DefaultVertexFormat -import com.mojang.blaze3d.vertex.PoseStack -import com.mojang.blaze3d.vertex.Tesselator -import com.mojang.blaze3d.vertex.VertexFormat +import com.mojang.blaze3d.vertex.* import com.mojang.math.Axis import net.minecraft.client.Minecraft import net.minecraft.client.gui.GuiGraphics diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java b/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java index 7aac8fe1af..ac05912be2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/ScryingLensOverlays.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.block.circle.BlockAbstractImpetus; import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.client.ScryingLensOverlayRegistry; import at.petrak.hexcasting.common.blocks.akashic.BlockEntityAkashicBookshelf; import at.petrak.hexcasting.common.lib.HexBlocks; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index 1d2903932f..7a7a5d212c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -9,14 +9,12 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.math.Axis; import net.minecraft.client.renderer.LevelRenderer; -import net.minecraft.client.renderer.LightTexture; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.core.Direction; import net.minecraft.core.Vec3i; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.AttachFace; import net.minecraft.world.phys.Vec3; -import org.joml.Matrix3f; import javax.annotation.Nullable; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java index 0d107bcebd..42b206c71d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/be/BlockEntityQuenchedAllayRenderer.java @@ -11,7 +11,6 @@ import net.minecraft.client.renderer.block.BlockRenderDispatcher; import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.phys.AABB; diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/shader/HexShaders.java b/Common/src/main/java/at/petrak/hexcasting/client/render/shader/HexShaders.java index b1a02bbf6f..97429ee608 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/shader/HexShaders.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/shader/HexShaders.java @@ -3,7 +3,6 @@ import com.mojang.blaze3d.vertex.DefaultVertexFormat; import com.mojang.datafixers.util.Pair; import net.minecraft.client.renderer.ShaderInstance; -import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.server.packs.resources.ResourceProvider; import java.io.IOException; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjuredLight.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjuredLight.java index cd59595474..52de256bbd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjuredLight.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/BlockConjuredLight.java @@ -19,7 +19,6 @@ import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; -import net.minecraft.world.level.material.PushReaction; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; import org.jetbrains.annotations.NotNull; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java index dc14338edd..5fecbdc4a0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockAkashicRecord.java @@ -1,10 +1,8 @@ package at.petrak.hexcasting.common.blocks.akashic; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.casting.math.HexPattern; import net.minecraft.core.BlockPos; -import net.minecraft.nbt.NbtOps; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java index 2e5569dd4c..285553529e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/akashic/BlockEntityAkashicBookshelf.java @@ -10,7 +10,6 @@ import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.Tag; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.Nullable; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEmptyImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEmptyImpetus.java index 2cac9c79f1..ce1d2dce57 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEmptyImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockEmptyImpetus.java @@ -15,7 +15,6 @@ import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.DirectionProperty; -import net.minecraft.world.level.material.PushReaction; import java.util.EnumSet; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockSlate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockSlate.java index a982c4c1e8..d1a15c9fd5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockSlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/BlockSlate.java @@ -19,18 +19,13 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; import net.minecraft.world.level.LevelReader; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.EntityBlock; -import net.minecraft.world.level.block.SimpleWaterloggedBlock; -import net.minecraft.world.level.block.Mirror; -import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.*; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.*; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; -import net.minecraft.world.level.material.PushReaction; import net.minecraft.world.phys.HitResult; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockBooleanDirectrix.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockBooleanDirectrix.java index 6d99767bce..c72555282a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockBooleanDirectrix.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockBooleanDirectrix.java @@ -20,7 +20,6 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.DirectionProperty; import net.minecraft.world.level.block.state.properties.EnumProperty; -import net.minecraft.world.level.material.PushReaction; import java.util.ArrayList; import java.util.EnumSet; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockEmptyDirectrix.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockEmptyDirectrix.java index 703b46350b..8a6e9f8ee9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockEmptyDirectrix.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockEmptyDirectrix.java @@ -15,7 +15,6 @@ import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.DirectionProperty; -import net.minecraft.world.level.material.PushReaction; import java.util.EnumSet; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockRedstoneDirectrix.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockRedstoneDirectrix.java index f8b8511f94..690225f051 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockRedstoneDirectrix.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/directrix/BlockRedstoneDirectrix.java @@ -18,7 +18,6 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.level.block.state.properties.DirectionProperty; -import net.minecraft.world.level.material.PushReaction; import net.minecraft.world.phys.Vec3; import java.util.EnumSet; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java index 387936a4a8..6355f37fc5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityLookingImpetus.java @@ -17,7 +17,6 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.HitResult; -import net.minecraft.world.phys.Vec3; public class BlockEntityLookingImpetus extends BlockEntityAbstractImpetus { public static final int MAX_LOOK_AMOUNT = 30; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java index bdbfd18ea5..4d64440931 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockEntityRedstoneImpetus.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.circles.BlockEntityAbstractImpetus; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexBlockEntities; import com.mojang.authlib.GameProfile; import com.mojang.datafixers.util.Pair; @@ -12,7 +11,6 @@ import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java index 946369429a..5bde4df0fa 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockAmethystDirectional.java @@ -9,8 +9,6 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.DirectionalBlock; -import net.minecraft.world.level.block.EndRodBlock; -import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.phys.BlockHitResult; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java index a36a2a6c3f..77a141074a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockHexFenceGate.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.common.blocks.decoration; import at.petrak.hexcasting.annotations.SoftImplement; -import at.petrak.hexcasting.common.lib.HexBlockSetTypes; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.BlockGetter; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockSconce.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockSconce.java index 8a6ff2b986..479e8c6e8a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockSconce.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/decoration/BlockSconce.java @@ -3,11 +3,11 @@ import at.petrak.hexcasting.common.particles.ConjureParticleOptions; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.tags.FluidTags; -import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; +import net.minecraft.tags.FluidTags; import net.minecraft.util.RandomSource; +import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.LevelAccessor; @@ -17,8 +17,8 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.level.block.state.properties.DirectionProperty; -import net.minecraft.world.level.block.state.properties.*; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; import net.minecraft.world.phys.shapes.CollisionContext; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/eval/OpThanos.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/eval/OpThanos.kt index 075fa90a2b..47373eb9f1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/eval/OpThanos.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/eval/OpThanos.kt @@ -6,7 +6,6 @@ import at.petrak.hexcasting.api.casting.eval.OperationResult import at.petrak.hexcasting.api.casting.eval.vm.CastingImage import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation import at.petrak.hexcasting.api.casting.iota.DoubleIota -import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.common.lib.hex.HexEvalSounds object OpThanos : Action { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt index 0346451238..84292e16a9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt @@ -11,7 +11,6 @@ import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import at.petrak.hexcasting.common.lib.hex.HexIotaTypes import net.minecraft.nbt.NbtOps -import net.minecraft.nbt.Tag object OpPushLocal : Action { override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt index 7cefbb95e2..57ad808dbf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/OpMakePackagedSpell.kt @@ -14,12 +14,12 @@ import at.petrak.hexcasting.api.utils.extractMedia import at.petrak.hexcasting.api.utils.isMediaItem import at.petrak.hexcasting.common.items.magic.ItemPackagedHex import at.petrak.hexcasting.xplat.IXplatAbstractions +import net.minecraft.network.chat.Component import net.minecraft.server.level.ServerPlayer import net.minecraft.world.entity.item.ItemEntity import net.minecraft.world.item.ItemStack -import net.minecraft.network.chat.Component -import java.util.function.Predicate; -import java.util.function.Supplier; +import java.util.function.Predicate +import java.util.function.Supplier // TODO: How to handle in circles class OpMakePackagedSpell(val isValid: Predicate, val expectedTypeDesc: Supplier, val cost: Long) : SpellAction { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt index c8319ce50a..c64c3247b4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/spells/great/OpTeleport.kt @@ -12,16 +12,11 @@ import at.petrak.hexcasting.api.casting.mishaps.MishapImmuneEntity import at.petrak.hexcasting.api.misc.MediaConstants import at.petrak.hexcasting.api.mod.HexConfig import at.petrak.hexcasting.api.mod.HexTags -import at.petrak.hexcasting.xplat.IXplatAbstractions -import net.minecraft.core.BlockPos import net.minecraft.core.component.DataComponents import net.minecraft.server.level.ServerLevel import net.minecraft.server.level.ServerPlayer -import net.minecraft.server.level.TicketType import net.minecraft.world.entity.Entity -import net.minecraft.world.item.enchantment.EnchantmentHelper import net.minecraft.world.item.enchantment.Enchantments -import net.minecraft.world.level.ChunkPos import net.minecraft.world.phys.Vec3 // TODO while we're making breaking changes I *really* want to have the vector in the entity's local space diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/BoolArithmetic.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/BoolArithmetic.kt index 79e58793a7..ab1fded6bf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/BoolArithmetic.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/BoolArithmetic.kt @@ -12,7 +12,8 @@ import at.petrak.hexcasting.api.casting.iota.BooleanIota import at.petrak.hexcasting.api.casting.iota.DoubleIota import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.math.HexPattern -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.BOOLEAN +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE import it.unimi.dsi.fastutil.booleans.BooleanBinaryOperator import it.unimi.dsi.fastutil.booleans.BooleanUnaryOperator import java.util.function.BiFunction diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/ListSetArithmetic.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/ListSetArithmetic.kt index d412c66652..b0096eb1d8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/ListSetArithmetic.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/ListSetArithmetic.kt @@ -6,7 +6,7 @@ import at.petrak.hexcasting.api.casting.arithmetic.engine.InvalidOperatorExcepti import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator.Companion.downcast import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBinary -import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate.* +import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate.all import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.ListIota diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/Vec3Arithmetic.java b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/Vec3Arithmetic.java index 3049177a97..a1d0af1ce4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/Vec3Arithmetic.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/Vec3Arithmetic.java @@ -2,9 +2,10 @@ import at.petrak.hexcasting.api.casting.arithmetic.Arithmetic; import at.petrak.hexcasting.api.casting.arithmetic.engine.InvalidOperatorException; +import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator; +import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorUnary; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate; -import at.petrak.hexcasting.api.casting.arithmetic.operator.*; import at.petrak.hexcasting.api.casting.iota.DoubleIota; import at.petrak.hexcasting.api.casting.iota.Vec3Iota; import at.petrak.hexcasting.api.casting.math.HexPattern; @@ -18,7 +19,8 @@ import java.util.function.Function; import static at.petrak.hexcasting.api.casting.arithmetic.operator.Operator.downcast; -import static at.petrak.hexcasting.common.lib.hex.HexIotaTypes.*; +import static at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE; +import static at.petrak.hexcasting.common.lib.hex.HexIotaTypes.VEC3; public enum Vec3Arithmetic implements Arithmetic { INSTANCE; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/OperatorLog.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/OperatorLog.kt index 0a36d8ac16..766b045898 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/OperatorLog.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/OperatorLog.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorAppend.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorAppend.kt index 724e5f6746..7e88dc0cb1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorAppend.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorAppend.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate @@ -8,7 +7,7 @@ import at.petrak.hexcasting.api.casting.asActionResult import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorAppend : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.ofType(LIST), IotaPredicate.TRUE)) { override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt index 2ecb5fc140..502a680d3a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndex.kt @@ -1,13 +1,13 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list +import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator -import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.NullIota -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST import kotlin.math.roundToInt object OperatorIndex : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.ofType(LIST), IotaPredicate.ofType(DOUBLE))) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndexOf.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndexOf.kt index a3d711d57a..747b4f74a2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndexOf.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorIndexOf.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate @@ -8,7 +7,7 @@ import at.petrak.hexcasting.api.casting.asActionResult import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorIndexOf : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.ofType(LIST), IotaPredicate.TRUE)) { override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorRemove.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorRemove.kt index 1a1af53cfc..685911c175 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorRemove.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorRemove.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate @@ -9,7 +8,8 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextInt import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorRemove : OperatorBasic(2, IotaMultiPredicate.pair(IotaPredicate.ofType(LIST), IotaPredicate.ofType(DOUBLE))) { override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorReplace.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorReplace.kt index ca976369c2..d019edbc56 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorReplace.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorReplace.kt @@ -1,7 +1,6 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list import at.petrak.hexcasting.api.casting.SpellList -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate @@ -10,7 +9,8 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList import at.petrak.hexcasting.common.casting.arithmetic.operator.nextPositiveIntUnder -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorReplace : OperatorBasic(3, IotaMultiPredicate.triple(IotaPredicate.ofType(LIST), IotaPredicate.ofType(DOUBLE), IotaPredicate.TRUE)) { override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorSlice.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorSlice.kt index d4e8c5f8ec..b62b4435fe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorSlice.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorSlice.kt @@ -1,15 +1,15 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list +import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator -import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.asActionResult import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList import at.petrak.hexcasting.common.casting.arithmetic.operator.nextPositiveIntUnderInclusive -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.DOUBLE +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST import kotlin.math.max import kotlin.math.min diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt index 54f0de69c2..850b51c01e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnCons.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt index 6d60362b0d..6203dd1748 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnappend.kt @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate @@ -9,7 +8,7 @@ import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.ListIota import at.petrak.hexcasting.api.casting.iota.NullIota import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.* +import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorUnappend : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate.ofType(LIST))) { override fun apply(iotas: Iterable, env: CastingEnvironment): Iterable { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnique.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnique.kt index b3cb19ec28..ea6fb237af 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnique.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/list/OperatorUnique.kt @@ -1,14 +1,13 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.list -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate import at.petrak.hexcasting.api.casting.asActionResult import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota -import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList import at.petrak.hexcasting.common.casting.actions.math.bit.OpToSet +import at.petrak.hexcasting.common.casting.arithmetic.operator.nextList import at.petrak.hexcasting.common.lib.hex.HexIotaTypes.LIST object OperatorUnique : OperatorBasic(1, IotaMultiPredicate.all(IotaPredicate.ofType(LIST))) { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorPack.java b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorPack.java index d30b8edcbc..60dfccd3fe 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorPack.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorPack.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.vec; -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator; import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorUnpack.java b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorUnpack.java index adaeed6981..168b1634bd 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorUnpack.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorUnpack.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.vec; -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator; import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorVec3Delegating.java b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorVec3Delegating.java index 25e543dfb9..cffce81922 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorVec3Delegating.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/arithmetic/operator/vec/OperatorVec3Delegating.java @@ -1,19 +1,18 @@ package at.petrak.hexcasting.common.casting.arithmetic.operator.vec; -import at.petrak.hexcasting.api.casting.arithmetic.operator.Operator; +import at.petrak.hexcasting.api.casting.arithmetic.IterPair; +import at.petrak.hexcasting.api.casting.arithmetic.TripleIterable; import at.petrak.hexcasting.api.casting.arithmetic.operator.OperatorBasic; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaMultiPredicate; import at.petrak.hexcasting.api.casting.arithmetic.predicates.IotaPredicate; -import at.petrak.hexcasting.api.casting.arithmetic.IterPair; -import at.petrak.hexcasting.api.casting.arithmetic.TripleIterable; import at.petrak.hexcasting.api.casting.eval.CastingEnvironment; -import at.petrak.hexcasting.api.casting.mishaps.Mishap; -import at.petrak.hexcasting.api.casting.mishaps.MishapDivideByZero; -import at.petrak.hexcasting.common.casting.arithmetic.DoubleArithmetic; import at.petrak.hexcasting.api.casting.iota.DoubleIota; import at.petrak.hexcasting.api.casting.iota.Iota; import at.petrak.hexcasting.api.casting.iota.Vec3Iota; import at.petrak.hexcasting.api.casting.math.HexPattern; +import at.petrak.hexcasting.api.casting.mishaps.Mishap; +import at.petrak.hexcasting.api.casting.mishaps.MishapDivideByZero; +import at.petrak.hexcasting.common.casting.arithmetic.DoubleArithmetic; import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.NotNull; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java index fdf2132032..25ece4a93a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/ListPerWorldPatternsCommand.java @@ -6,26 +6,20 @@ import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; -import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; -import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.server.ScrungledPatternsSave; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.brigadier.builder.LiteralArgumentBuilder; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.Commands; import net.minecraft.commands.arguments.EntityArgument; -import net.minecraft.commands.arguments.ResourceLocationArgument; import net.minecraft.core.Registry; -import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.component.CustomData; import java.util.Collection; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java index 4413203b37..004329ca63 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResKeyArgument.java @@ -15,13 +15,9 @@ import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.SharedSuggestionProvider; import net.minecraft.commands.arguments.ResourceKeyArgument; -import net.minecraft.commands.arguments.ResourceLocationArgument; import net.minecraft.core.Registry; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.crafting.RecipeHolder; -import net.minecraft.world.item.crafting.RecipeManager; import java.util.ArrayList; import java.util.Optional; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java index 4b8dc838ad..e762b93276 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/entities/EntityWallScroll.java @@ -1,9 +1,6 @@ package at.petrak.hexcasting.common.entities; import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.utils.HexUtils; -import at.petrak.hexcasting.api.utils.NBTHelper; -import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; @@ -12,10 +9,8 @@ import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.component.DataComponents; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.common.ClientCommonPacketListener; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; import net.minecraft.network.syncher.EntityDataAccessor; @@ -30,7 +25,6 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.decoration.HangingEntity; -import net.minecraft.world.entity.decoration.PaintingVariant; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameRules; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java index c80424c0a5..bf1aabab36 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/impl/HexAPIImpl.java @@ -6,19 +6,15 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.server.level.ServerPlayer; -import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.ArmorMaterial; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.phys.Vec3; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.Collections; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java index f1d6135e74..713c7e3c73 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemJewelerHammer.java @@ -2,12 +2,10 @@ import at.petrak.hexcasting.common.lib.HexItems; import net.minecraft.core.BlockPos; -import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.PickaxeItem; import net.minecraft.world.item.Tier; -import net.minecraft.world.item.component.ItemAttributeModifiers; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java index c093ef4307..5f9772ec4d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLens.java @@ -9,22 +9,15 @@ import net.minecraft.core.dispenser.BlockSource; import net.minecraft.core.dispenser.OptionalDispenseItemBehavior; import net.minecraft.world.entity.EquipmentSlot; -import net.minecraft.world.entity.EquipmentSlotGroup; import net.minecraft.world.entity.ai.attributes.Attribute; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -//import net.minecraft.world.item.Wearable; -import net.minecraft.world.item.component.ItemAttributeModifiers; import net.minecraft.world.level.block.DispenserBlock; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.UUID; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public class ItemLens extends Item implements HexBaubleItem { // Wearable, // The 0.1 is *additive* diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java index 52e88072fd..d6e4051a7c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemLoreFragment.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.common.items; import at.petrak.hexcasting.common.lib.HexSounds; -import net.minecraft.advancements.Advancement; import net.minecraft.advancements.AdvancementHolder; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.network.chat.Component; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index 7fc41bdf3b..6b5a53e72a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -6,7 +6,6 @@ import at.petrak.hexcasting.common.msgs.MsgClearSpiralPatternsS2C; import at.petrak.hexcasting.common.msgs.MsgOpenSpellGuiS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.core.Holder; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java b/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java index 9ddef43531..fbe194e85f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/armor/ItemRobes.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.HexAPI; import net.minecraft.core.Holder; -import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.ArmorItem; /** diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java index b6e8d2ef02..599dac3108 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java @@ -1,16 +1,10 @@ package at.petrak.hexcasting.common.items.magic; -import at.petrak.hexcasting.api.casting.iota.IotaType; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.Component; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; -import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java index 9d989c3af6..4885269d41 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemCreativeUnlocker.java @@ -11,7 +11,6 @@ import net.minecraft.ChatFormatting; import net.minecraft.Util; import net.minecraft.advancements.AdvancementNode; -import net.minecraft.client.Minecraft; import net.minecraft.core.component.DataComponentType; import net.minecraft.core.component.DataComponents; import net.minecraft.locale.Language; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaBattery.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaBattery.java index 48fbd25ab7..a0a7da5aa4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaBattery.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaBattery.java @@ -1,11 +1,7 @@ package at.petrak.hexcasting.common.items.magic; -import at.petrak.hexcasting.api.misc.MediaConstants; -import net.minecraft.core.NonNullList; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; -import org.jetbrains.annotations.NotNull; import static at.petrak.hexcasting.api.HexAPI.modLoc; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java index 8603d61e98..f7365ae6f1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemMediaHolder.java @@ -4,16 +4,12 @@ import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.utils.MathUtils; import at.petrak.hexcasting.api.utils.MediaHelper; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextColor; -import net.minecraft.util.Mth; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; -import org.jetbrains.annotations.Nullable; import java.math.RoundingMode; import java.text.DecimalFormat; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java index 5f976f86d8..ae5dc07147 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java @@ -4,17 +4,12 @@ import at.petrak.hexcasting.api.casting.eval.env.PackagedItemCastEnv; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.casting.iota.PatternIota; import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.msgs.MsgNewSpiralPatternsS2C; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.Tag; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -31,7 +26,6 @@ import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; import java.util.List; import static at.petrak.hexcasting.api.HexAPI.modLoc; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemAmethystPigment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemAmethystPigment.java index c4a8c001ed..3f36c65a5e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemAmethystPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemAmethystPigment.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.items.pigment; -import at.petrak.hexcasting.api.addldata.ADPigment; import at.petrak.hexcasting.api.item.PigmentItem; import at.petrak.hexcasting.api.pigment.ColorProvider; import net.minecraft.world.item.Item; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java index 6ce75671e9..5eb4c24dec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/pigment/ItemUUIDPigment.java @@ -3,7 +3,6 @@ import at.petrak.hexcasting.api.addldata.ADPigment; import at.petrak.hexcasting.api.item.PigmentItem; import at.petrak.hexcasting.api.pigment.ColorProvider; -import at.petrak.paucal.api.PaucalAPI; import at.petrak.paucal.xplat.common.ContributorsManifest; import com.google.gson.JsonElement; import com.google.gson.JsonPrimitive; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java index fc12ecb0f2..2cb2105c42 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemAbacus.java @@ -2,13 +2,9 @@ import at.petrak.hexcasting.api.casting.iota.DoubleIota; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexSounds; -import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResultHolder; @@ -19,7 +15,6 @@ import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; -import javax.xml.crypto.Data; import java.util.List; public class ItemAbacus extends Item implements IotaHolderItem { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java index e713477d43..147ab96216 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java @@ -1,20 +1,15 @@ package at.petrak.hexcasting.common.items.storage; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.item.VariantItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Unit; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; -import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java index 9ba2cb5aec..1d71215620 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemScroll.java @@ -2,27 +2,21 @@ import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.NullIota; import at.petrak.hexcasting.api.casting.iota.PatternIota; -import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; +import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.common.entities.EntityWallScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; -import at.petrak.hexcasting.common.casting.PatternRegistryManifest; import at.petrak.hexcasting.interop.inline.InlinePatternData; -import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -32,13 +26,12 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.UseOnContext; -import net.minecraft.world.level.gameevent.GameEvent; import net.minecraft.world.level.Level; +import net.minecraft.world.level.gameevent.GameEvent; import org.jetbrains.annotations.Nullable; -import java.util.Objects; -import java.util.Optional; import java.util.List; +import java.util.Optional; import static at.petrak.hexcasting.api.HexAPI.modLoc; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java index 69d8a4078c..a607dadacb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSlate.java @@ -6,17 +6,10 @@ import at.petrak.hexcasting.api.casting.iota.PatternIota; import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.client.gui.PatternTooltipComponent; -import at.petrak.hexcasting.common.blocks.circles.BlockEntitySlate; import at.petrak.hexcasting.common.lib.HexDataComponents; -import at.petrak.hexcasting.common.lib.hex.HexIotaTypes; import at.petrak.hexcasting.common.misc.PatternTooltip; import at.petrak.hexcasting.interop.inline.InlinePatternData; -import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.NbtOps; -import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.Entity; @@ -24,7 +17,6 @@ import net.minecraft.world.inventory.tooltip.TooltipComponent; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.component.CustomData; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import org.jetbrains.annotations.Nullable; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java index d2523eb875..e9656c4239 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemSpellbook.java @@ -1,15 +1,11 @@ package at.petrak.hexcasting.common.items.storage; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.item.VariantItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import net.minecraft.ChatFormatting; import net.minecraft.core.component.DataComponents; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; @@ -22,7 +18,6 @@ import java.util.Collections; import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.stream.Stream; import static at.petrak.hexcasting.common.items.storage.ItemFocus.NUM_VARIANTS; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java index 2cc1ec3033..076f044d8a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java @@ -1,17 +1,13 @@ package at.petrak.hexcasting.common.items.storage; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; -import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java index ed7c9f81bf..08e13caea3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBlocks.java @@ -21,7 +21,10 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.util.ColorRGBA; import net.minecraft.world.entity.EntityType; -import net.minecraft.world.item.*; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.*; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.MapColor; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java index 9feb903d56..415a540a0b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexCreativeTabs.java @@ -6,13 +6,11 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; -import at.petrak.hexcasting.common.items.storage.ItemScroll; import java.util.LinkedHashMap; import java.util.Map; import java.util.function.BiConsumer; -import static at.petrak.hexcasting.api.HexAPI.MOD_ID; import static at.petrak.hexcasting.api.HexAPI.modLoc; public class HexCreativeTabs { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexFeatureConfigs.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexFeatureConfigs.java index 52be4c646e..6825892683 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexFeatureConfigs.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexFeatureConfigs.java @@ -2,7 +2,6 @@ import at.petrak.hexcasting.api.HexAPI; import com.mojang.serialization.JsonOps; -import net.minecraft.server.Bootstrap; import net.minecraft.util.random.SimpleWeightedRandomList; import net.minecraft.util.valueproviders.ConstantInt; import net.minecraft.world.level.block.Block; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java index f4dcc334ff..0bfe66b01c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexItems.java @@ -1,9 +1,9 @@ package at.petrak.hexcasting.common.lib; -import at.petrak.hexcasting.api.misc.MediaConstants; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.api.casting.ActionRegistryEntry; +import at.petrak.hexcasting.api.misc.MediaConstants; import at.petrak.hexcasting.api.mod.HexTags; +import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.items.ItemJewelerHammer; import at.petrak.hexcasting.common.items.ItemLens; import at.petrak.hexcasting.common.items.ItemLoreFragment; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java index a8b813d5ba..24b964524a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexLootFunctions.java @@ -1,7 +1,7 @@ package at.petrak.hexcasting.common.lib; -import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; import at.petrak.hexcasting.common.loot.AddHexToAncientCypherFunc; +import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; import at.petrak.hexcasting.common.loot.AmethystReducerFunc; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java index f6be2e2757..9f03197eaf 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexMobEffects.java @@ -6,17 +6,10 @@ import at.petrak.hexcasting.xplat.IXplatRegister; import net.minecraft.core.Holder; import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.effect.MobEffect; import net.minecraft.world.effect.MobEffectCategory; import net.minecraft.world.entity.ai.attributes.AttributeModifier; -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.function.BiConsumer; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public class HexMobEffects { private static final IXplatRegister REGISTER = IXplatAbstractions.INSTANCE diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java index e9cad03dd4..243c32f255 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexPotions.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.lib; -import net.minecraft.core.Holder; import net.minecraft.core.RegistryAccess; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java index 9ea3f26bec..d82e177dec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexRegistries.java @@ -6,8 +6,8 @@ import at.petrak.hexcasting.api.casting.eval.sideeffects.EvalSound; import at.petrak.hexcasting.api.casting.eval.vm.ContinuationFrame; import at.petrak.hexcasting.api.casting.iota.IotaType; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java index e103d7720e..588a541cf5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/hex/HexIotaTypes.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.common.lib.hex; -import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.iota.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; import net.minecraft.core.Registry; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java index 3d6ba439f4..153de7e255 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java @@ -1,20 +1,15 @@ package at.petrak.hexcasting.common.loot; import at.petrak.hexcasting.api.casting.iota.PatternIota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.casting.math.HexDir; import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.item.VariantItem; import at.petrak.hexcasting.api.misc.MediaConstants; -import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.common.items.magic.ItemAncientCypher; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexLootFunctions; +import com.mojang.datafixers.util.Pair; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.util.RandomSource; -import net.minecraft.nbt.ListTag; -import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction; @@ -24,9 +19,6 @@ import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; -import java.util.stream.Stream; - -import com.mojang.datafixers.util.Pair; /** * Add a random preset hex to the ancient cypher, and select a random variant. diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java index 870714dd87..30f60d176f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddPerWorldPatternToScrollFunc.java @@ -3,22 +3,18 @@ import at.petrak.hexcasting.api.casting.ActionRegistryEntry; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.api.utils.HexUtils; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.casting.PatternRegistryManifest; -import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexLootFunctions; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.util.RandomSource; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.RandomSource; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.level.storage.loot.LootContext; -import net.minecraft.world.level.storage.loot.functions.ApplyBonusCount; import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction; import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType; import net.minecraft.world.level.storage.loot.predicates.LootItemCondition; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java index a84ac38e63..0022f67bd3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgCastParticleS2C.java @@ -5,20 +5,15 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment; import at.petrak.hexcasting.client.ClientTickCounter; import at.petrak.hexcasting.common.particles.ConjureParticleOptions; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.phys.Vec3; import java.util.Random; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - /** * Sent server->client to spray particles everywhere. */ diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java index b0a74a52c4..b53cfc6728 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgClearSpiralPatternsS2C.java @@ -1,22 +1,15 @@ package at.petrak.hexcasting.common.msgs; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.core.UUIDUtil; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; import java.util.UUID; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public record MsgClearSpiralPatternsS2C(UUID playerUUID) implements CustomPacketPayload { public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("clr_spi_pats_sc")); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java index 06440b01b6..0ce45eff43 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternC2S.java @@ -4,9 +4,6 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import at.petrak.hexcasting.api.casting.eval.env.StaffCastEnv; import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.pigment.FrozenPigment; -import io.netty.buffer.ByteBuf; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; @@ -15,7 +12,6 @@ import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; -import java.util.ArrayList; import java.util.List; /** diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java index 1f4501e9eb..2241aafb85 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpellPatternS2C.java @@ -2,24 +2,13 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.eval.ExecutionClientView; -import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; -import at.petrak.hexcasting.api.casting.eval.ResolvedPatternType; -import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.client.gui.GuiSpellcasting; import at.petrak.hexcasting.common.lib.HexSounds; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.InteractionHand; - -import java.util.Optional; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent server->client when the player finishes casting a spell. diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java index 0a24254e46..362f01d1ec 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewSpiralPatternsS2C.java @@ -3,22 +3,16 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.xplat.IClientXplatAbstractions; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.core.UUIDUtil; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import java.util.ArrayList; import java.util.List; import java.util.UUID; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public record MsgNewSpiralPatternsS2C(UUID playerUUID, List patterns, int lifetime) implements CustomPacketPayload { public static final CustomPacketPayload.Type TYPE = new CustomPacketPayload.Type<>(HexAPI.modLoc("spi_pats_sc")); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java index a87ffc304c..4451295b7a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgNewWallScrollS2C.java @@ -1,24 +1,16 @@ package at.petrak.hexcasting.common.msgs; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.entities.EntityWallScroll; -import at.petrak.paucal.api.PaucalCodecs; import net.minecraft.client.Minecraft; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.registries.Registries; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; // https://github.com/VazkiiMods/Botania/blob/1.18.x/Xplat/src/main/java/vazkii/botania/network/clientbound/PacketSpawnDoppleganger.java public record MsgNewWallScrollS2C(ClientboundAddEntityPacket inner, BlockPos pos, Direction dir, ItemStack scrollItem, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java index 25d178cf28..fecc4581c1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgOpenSpellGuiS2C.java @@ -4,26 +4,19 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import at.petrak.hexcasting.api.casting.iota.Iota; import at.petrak.hexcasting.api.casting.iota.IotaType; -import at.petrak.hexcasting.api.casting.math.HexPattern; import at.petrak.hexcasting.client.gui.GuiSpellcasting; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.ExtraCodecs; import net.minecraft.world.InteractionHand; import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Optional; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - /** * Sent server->client when the player opens the spell gui to request the server provide the current stack. */ diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java index 7b1b8c4e50..1cbe120432 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgRecalcWallScrollDisplayS2C.java @@ -2,20 +2,11 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.entities.EntityWallScroll; -import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; -import net.minecraft.core.BlockPos; -import net.minecraft.core.Direction; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.ItemStack; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent S->C to have a wall scroll recalculate its pattern, to get readability offset. diff --git a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java index a8fc568f3c..8237d67943 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/msgs/MsgShiftScrollC2S.java @@ -1,36 +1,23 @@ package at.petrak.hexcasting.common.msgs; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; -import at.petrak.hexcasting.api.casting.iota.IotaType; -import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.utils.NBTHelper; -import at.petrak.hexcasting.common.items.storage.ItemAbacus; import at.petrak.hexcasting.common.items.storage.ItemSpellbook; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.lib.HexSounds; -import io.netty.buffer.ByteBuf; import net.minecraft.ChatFormatting; import net.minecraft.core.component.DataComponents; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; -import net.minecraft.resources.ResourceLocation; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.component.CustomData; - -import javax.xml.crypto.Data; - -import static at.petrak.hexcasting.api.HexAPI.modLoc; /** * Sent client->server when the client shift+scrolls with a shift-scrollable item diff --git a/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java b/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java index f5696edbe4..05c4983c90 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/particles/ConjureParticleOptions.java @@ -1,20 +1,15 @@ package at.petrak.hexcasting.common.particles; import at.petrak.hexcasting.common.lib.HexParticles; -import com.mojang.brigadier.StringReader; -import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import java.util.Locale; - public record ConjureParticleOptions(int color) implements ParticleOptions { @Override public ParticleType getType() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index 676539fc43..bc6ae580a6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,9 +1,9 @@ package at.petrak.hexcasting.common.recipe; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java index 0da1e86001..91d891f88f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java @@ -6,10 +6,7 @@ import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; import net.minecraft.core.HolderLookup; -import net.minecraft.core.RegistryAccess; -import net.minecraft.resources.ResourceLocation; import net.minecraft.util.StringRepresentable; -import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.*; import net.minecraft.world.level.Level; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java index 950e18a03e..c095776468 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredient.java @@ -1,19 +1,14 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonObject; import net.minecraft.ChatFormatting; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.GsonHelper; -import net.minecraft.util.StringRepresentable; import net.minecraft.world.entity.Entity; import net.minecraft.world.level.Level; import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.Locale; // Partially based on: // https://github.com/SlimeKnights/Mantle/blob/1.18.2/src/main/java/slimeknights/mantle/recipe/ingredient/EntityIngredient.java diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java index 7ce69c45eb..756517b3a1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java @@ -1,18 +1,14 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; -import com.google.gson.JsonObject; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.GsonHelper; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.level.Level; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java index 506982407a..a7f58fc997 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java @@ -1,23 +1,18 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; -import com.google.gson.JsonObject; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; -import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; -import net.minecraft.util.GsonHelper; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.npc.Villager; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java index e2c39f5ffa..598e3539cc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexAdvancements.java @@ -11,7 +11,6 @@ import net.minecraft.advancements.*; import net.minecraft.advancements.critereon.*; import net.minecraft.core.HolderLookup; -import net.minecraft.core.registries.Registries; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java index 7def1328b6..a8743618c1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.datagen; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.common.blocks.circles.BlockEntitySlate; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexItems; @@ -10,12 +9,8 @@ import at.petrak.paucal.api.datagen.PaucalLootTableSubProvider; import net.minecraft.advancements.critereon.*; import net.minecraft.core.HolderLookup; -import net.minecraft.core.component.DataComponentPredicate; -import net.minecraft.core.component.DataComponents; import net.minecraft.core.registries.Registries; -import net.minecraft.data.DataProvider; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.Enchantments; @@ -33,7 +28,6 @@ import net.minecraft.world.level.storage.loot.functions.CopyComponentsFunction; import net.minecraft.world.level.storage.loot.functions.SetItemCountFunction; import net.minecraft.world.level.storage.loot.predicates.*; -import net.minecraft.world.level.storage.loot.providers.nbt.ContextNbtProvider; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraft.world.level.storage.loot.providers.number.UniformGenerator; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index d254d28eb4..94e1d8ee8b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -10,9 +10,9 @@ import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.common.recipe.SealThingsRecipe; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.EntityTypeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.VillagerIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; import at.petrak.hexcasting.datagen.HexAdvancements; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; import at.petrak.hexcasting.datagen.IXplatIngredients; @@ -29,7 +29,6 @@ import net.minecraft.data.recipes.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; -import net.minecraft.sounds.SoundSource; import net.minecraft.tags.ItemTags; import net.minecraft.tags.TagKey; import net.minecraft.world.entity.EntityType; @@ -38,7 +37,10 @@ import net.minecraft.world.item.DyeItem; import net.minecraft.world.item.Item; import net.minecraft.world.item.Items; -import net.minecraft.world.item.crafting.*; +import net.minecraft.world.item.crafting.CraftingBookCategory; +import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.ItemLike; import net.minecraft.world.level.block.Blocks; import org.jetbrains.annotations.Nullable; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java index d1ffa3df38..598e6dac6d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/BrainsweepRecipeBuilder.java @@ -1,8 +1,8 @@ package at.petrak.hexcasting.datagen.recipe.builders; import at.petrak.hexcasting.common.recipe.BrainsweepRecipe; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; import net.minecraft.advancements.Advancement; import net.minecraft.advancements.AdvancementRequirements; import net.minecraft.advancements.AdvancementRewards; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java index ed66b649cd..a88a3f19fc 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/CreateCrushingRecipeBuilder.java @@ -1,7 +1,5 @@ package at.petrak.hexcasting.datagen.recipe.builders; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; import net.minecraft.advancements.Criterion; import net.minecraft.data.recipes.RecipeBuilder; import net.minecraft.data.recipes.RecipeOutput; @@ -10,14 +8,12 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.ItemLike; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; -import java.util.function.Consumer; // Largely adapted from the following classes: // https://github.com/Creators-of-Create/Create/blob/82be76d8934af03b4e52cad6a9f74a4175ba7b05/src/main/java/com/simibubi/create/content/contraptions/processing/ProcessingOutput.java diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java index a5daeb205e..40d9c175d4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/builders/FarmersDelightCuttingRecipeBuilder.java @@ -1,12 +1,7 @@ package at.petrak.hexcasting.datagen.recipe.builders; import com.google.common.collect.Lists; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; import net.minecraft.advancements.Criterion; -import net.minecraft.advancements.CriterionTriggerInstance; -import net.minecraft.core.Registry; -import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.recipes.RecipeBuilder; import net.minecraft.data.recipes.RecipeOutput; import net.minecraft.resources.ResourceLocation; @@ -15,13 +10,11 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.level.ItemLike; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.function.Consumer; public class FarmersDelightCuttingRecipeBuilder implements RecipeBuilder { private String group = ""; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java index 446a52fe27..c96884c814 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexBlockTagProvider.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.datagen.tag; -import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.xplat.IXplatTags; diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java index ab7c286da9..52806551eb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/tag/HexItemTagProvider.java @@ -1,16 +1,12 @@ package at.petrak.hexcasting.datagen.tag; -import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.api.mod.HexTags; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.hexcasting.xplat.IXplatTags; import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; -import net.minecraft.data.DataGenerator; import net.minecraft.data.PackOutput; import net.minecraft.data.tags.ItemTagsProvider; -import net.minecraft.data.tags.TagsProvider; -import net.minecraft.data.tags.VanillaItemTagsProvider; import net.minecraft.tags.BlockTags; import net.minecraft.tags.ItemTags; import net.minecraft.world.item.Item; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java index 98ced2a109..65ee26ae80 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/BrainsweepProcessor.java @@ -16,6 +16,7 @@ import vazkii.patchouli.api.IComponentProcessor; import vazkii.patchouli.api.IVariable; import vazkii.patchouli.api.IVariableProvider; + import java.util.Arrays; import java.util.List; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java index 37e02355f0..c48c512af8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/CustomComponentTooltip.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.interop.patchouli; import com.google.gson.annotations.SerializedName; -import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.core.HolderLookup; import net.minecraft.network.chat.Component; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java index 8311181fe6..dce99b762b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/patchouli/MultiCraftingProcessor.java @@ -16,7 +16,6 @@ import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.item.crafting.ShapedRecipe; import net.minecraft.world.level.Level; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import vazkii.patchouli.api.IComponentProcessor; import vazkii.patchouli.api.IVariable; diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/utils/PatternDrawingUtil.java b/Common/src/main/java/at/petrak/hexcasting/interop/utils/PatternDrawingUtil.java index 0829937b58..572923f6ab 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/utils/PatternDrawingUtil.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/utils/PatternDrawingUtil.java @@ -6,7 +6,6 @@ import at.petrak.hexcasting.client.render.RenderLib; import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.datafixers.util.Pair; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.GameRenderer; diff --git a/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java b/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java index f8172dc5b2..f304b2498d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java +++ b/Common/src/main/java/at/petrak/hexcasting/mixin/MixinWanderingTrader.java @@ -1,20 +1,17 @@ package at.petrak.hexcasting.mixin; +import at.petrak.hexcasting.api.mod.HexConfig; import at.petrak.hexcasting.common.lib.HexDataComponents; +import at.petrak.hexcasting.common.lib.HexItems; +import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; +import net.minecraft.util.RandomSource; import net.minecraft.util.Unit; import net.minecraft.world.entity.npc.WanderingTrader; -import net.minecraft.world.item.trading.ItemCost; -import net.minecraft.world.item.trading.MerchantOffers; -import net.minecraft.world.item.trading.MerchantOffer; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; -import net.minecraft.util.RandomSource; -import net.minecraft.server.MinecraftServer; -import at.petrak.hexcasting.api.mod.HexConfig; -import at.petrak.hexcasting.api.utils.NBTHelper; -import at.petrak.hexcasting.common.lib.HexItems; -import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; -import at.petrak.hexcasting.common.items.storage.ItemScroll; +import net.minecraft.world.item.trading.ItemCost; +import net.minecraft.world.item.trading.MerchantOffer; +import net.minecraft.world.item.trading.MerchantOffers; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 8825bb6586..14c8e4d3d7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -19,8 +19,8 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.interop.pehkui.PehkuiInterop; import com.mojang.authlib.GameProfile; import net.minecraft.core.BlockPos; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java index 3d8d3a9a8e..9e5583f45e 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexConfig.java @@ -15,7 +15,6 @@ import me.shedaniel.autoconfig.serializer.PartitioningSerializer; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.RandomSource; import net.minecraft.util.Mth; import net.minecraft.world.level.Level; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index f6aa4f9289..a2e152e6aa 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -34,12 +34,7 @@ import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients import at.petrak.hexcasting.fabric.cc.HexCardinalComponents -import at.petrak.hexcasting.fabric.cc.adimpl.CCHexHolder -import at.petrak.hexcasting.fabric.cc.adimpl.CCIotaHolder -import at.petrak.hexcasting.fabric.cc.adimpl.CCItemIotaHolder -import at.petrak.hexcasting.fabric.cc.adimpl.CCMediaHolder -import at.petrak.hexcasting.fabric.cc.adimpl.CCPigment -import at.petrak.hexcasting.fabric.cc.adimpl.CCVariantItem +import at.petrak.hexcasting.fabric.cc.adimpl.* import at.petrak.hexcasting.fabric.event.VillagerConversionCallback import at.petrak.hexcasting.fabric.loot.FabricHexLootModJankery import at.petrak.hexcasting.fabric.network.FabricPacketHandler @@ -49,7 +44,6 @@ import at.petrak.hexcasting.fabric.storage.FabricImpetusStorage import at.petrak.hexcasting.fabric.xplat.FabricXplatImpl import at.petrak.hexcasting.interop.HexInterop import at.petrak.hexcasting.xplat.IXplatAbstractions -import com.samsthenerd.inline.utils.EntityCradle import com.samsthenerd.inline.utils.cradles.EntTypeCradle import net.fabricmc.api.ModInitializer import net.fabricmc.fabric.api.command.v2.ArgumentTypeRegistry @@ -59,7 +53,6 @@ import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents import net.fabricmc.fabric.api.event.player.AttackBlockCallback import net.fabricmc.fabric.api.event.player.UseEntityCallback -import net.fabricmc.fabric.api.item.v1.DefaultItemComponentEvents import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents import net.fabricmc.fabric.api.loot.v3.LootTableEvents import net.fabricmc.fabric.api.`object`.builder.v1.entity.FabricDefaultAttributeRegistry diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java index 66efacd5ff..230b6d1531 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCAltiora.java @@ -2,11 +2,11 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; import org.jetbrains.annotations.Nullable; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; public class CCAltiora implements Component, AutoSyncedComponent { public static final String diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java index a948055463..6463ed8cf5 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCBrainswept.java @@ -1,13 +1,12 @@ package at.petrak.hexcasting.fabric.cc; import net.minecraft.core.HolderLookup; -import net.minecraft.network.RegistryFriendlyByteBuf; -import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.Mob; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; public class CCBrainswept implements Component, AutoSyncedComponent { public static final String TAG_BRAINSWEPT = "brainswept"; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java index 7552956809..3207b4366f 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCClientCastingStack.java @@ -2,10 +2,10 @@ import at.petrak.hexcasting.api.client.ClientCastingStack; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.component.tick.ClientTickingComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.tick.ClientTickingComponent; public class CCClientCastingStack implements Component, ClientTickingComponent { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java index 23ed124124..37e4e059c6 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFavoredPigment.java @@ -2,11 +2,11 @@ import at.petrak.hexcasting.api.pigment.FrozenPigment; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.entity.player.Player; import org.jetbrains.annotations.Nullable; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; /** * Holds the pigment item favored by the player diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java index 629585a13d..6144679b15 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCFlight.java @@ -3,13 +3,13 @@ import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.utils.HexUtils; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import org.jetbrains.annotations.Nullable; +import org.ladysnake.cca.api.v3.component.Component; public class CCFlight implements Component { public static final String diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java index 34097cf2aa..a742f8ff8a 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCPatterns.java @@ -2,13 +2,13 @@ import at.petrak.hexcasting.api.casting.eval.ResolvedPattern; import net.minecraft.core.HolderLookup; -import net.minecraft.nbt.NbtOps; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; +import org.ladysnake.cca.api.v3.component.Component; import java.util.ArrayList; import java.util.Collections; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java index e0db645188..ed89ccfc17 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCSentinel.java @@ -3,13 +3,13 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; -import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import net.minecraft.core.registries.Registries; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; +import org.ladysnake.cca.api.v3.component.Component; +import org.ladysnake.cca.api.v3.component.sync.AutoSyncedComponent; import javax.annotation.Nullable; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java index 5fd49a0bdf..59ef8f4e03 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/CCStaffcastImage.java @@ -4,12 +4,12 @@ import at.petrak.hexcasting.api.casting.eval.vm.CastingImage; import at.petrak.hexcasting.api.casting.eval.vm.CastingVM; import net.minecraft.core.HolderLookup; -import net.minecraft.nbt.NbtOps; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import org.jetbrains.annotations.Nullable; +import org.ladysnake.cca.api.v3.component.Component; public class CCStaffcastImage implements Component { public static final String TAG_VM = "harness"; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java index 27f647d864..34d588bcf3 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java @@ -1,11 +1,15 @@ package at.petrak.hexcasting.fabric.cc; import at.petrak.hexcasting.api.addldata.*; -import at.petrak.hexcasting.api.item.*; import at.petrak.hexcasting.common.entities.EntityWallScroll; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.fabric.cc.adimpl.*; import net.fabricmc.fabric.api.lookup.v1.item.ItemApiLookup; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.decoration.ItemFrame; +import net.minecraft.world.entity.item.ItemEntity; import org.ladysnake.cca.api.v3.component.ComponentFactory; import org.ladysnake.cca.api.v3.component.ComponentKey; import org.ladysnake.cca.api.v3.component.ComponentRegistry; @@ -13,11 +17,6 @@ import org.ladysnake.cca.api.v3.entity.EntityComponentInitializer; import org.ladysnake.cca.api.v3.entity.RespawnCopyStrategy; import org.ladysnake.cca.api.v3.item.ItemComponentInitializer; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.Mob; -import net.minecraft.world.entity.decoration.ItemFrame; -import net.minecraft.world.entity.item.ItemEntity; import org.ladysnake.cca.api.v3.item.ItemComponentMigrationRegistry; import java.util.function.Function; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCEntityIotaHolder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCEntityIotaHolder.java index 28df8c5826..7c165dd5ee 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCEntityIotaHolder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCEntityIotaHolder.java @@ -4,7 +4,6 @@ import at.petrak.hexcasting.api.casting.iota.Iota; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCHexHolder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCHexHolder.java index f5d97880c8..d155ed9446 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCHexHolder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCHexHolder.java @@ -1,10 +1,9 @@ package at.petrak.hexcasting.fabric.cc.adimpl; import at.petrak.hexcasting.api.addldata.ADHexHolder; -import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.pigment.FrozenPigment; -import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCItemIotaHolder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCItemIotaHolder.java index a64f2d9419..e58ec98222 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCItemIotaHolder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCItemIotaHolder.java @@ -1,14 +1,12 @@ package at.petrak.hexcasting.fabric.cc.adimpl; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import net.minecraft.core.HolderLookup; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.Nullable; +import org.ladysnake.cca.api.v3.component.Component; import java.util.function.Function; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java index 7a565fa4fe..c08d2f4c32 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCMediaHolder.java @@ -4,8 +4,8 @@ import at.petrak.hexcasting.api.item.MediaHolderItem; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.world.item.ItemStack; +import org.ladysnake.cca.api.v3.component.Component; import java.util.function.Supplier; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java index a2274897dc..6b3cff704f 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCPigment.java @@ -3,9 +3,8 @@ import at.petrak.hexcasting.api.addldata.ADPigment; import at.petrak.hexcasting.api.item.PigmentItem; import at.petrak.hexcasting.api.pigment.ColorProvider; -import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; -import org.ladysnake.cca.api.v3.component.TransientComponent; import net.minecraft.world.item.ItemStack; +import org.ladysnake.cca.api.v3.component.TransientComponent; import java.util.UUID; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java index 57a40eb67b..e63f54fb64 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/adimpl/CCVariantItem.java @@ -2,12 +2,10 @@ import at.petrak.hexcasting.api.addldata.ADVariantItem; import at.petrak.hexcasting.api.item.VariantItem; -import at.petrak.hexcasting.fabric.cc.HexCardinalComponents; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.item.Item; -import org.ladysnake.cca.api.v3.component.Component; import net.minecraft.world.item.ItemStack; +import org.ladysnake.cca.api.v3.component.Component; public abstract class CCVariantItem implements ADVariantItem, Component { final ItemStack stack; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java index 3b6821fd9e..2303636f13 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricConditionsBuilder.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.fabric.datagen; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; -import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; import net.fabricmc.fabric.api.resource.conditions.v1.ResourceCondition; import net.fabricmc.fabric.api.resource.conditions.v1.ResourceConditions; import net.fabricmc.fabric.impl.datagen.FabricDataGenHelper; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java index c559c45eb8..71fa27950d 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/datagen/HexFabricDataGenerators.java @@ -8,9 +8,7 @@ import at.petrak.hexcasting.datagen.tag.HexActionTagProvider; import at.petrak.hexcasting.datagen.tag.HexBlockTagProvider; import at.petrak.hexcasting.datagen.tag.HexItemTagProvider; -import at.petrak.hexcasting.fabric.FabricHexInitializer; import at.petrak.hexcasting.fabric.recipe.FabricModConditionalIngredient; -import at.petrak.hexcasting.fabric.xplat.FabricXplatImpl; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.google.gson.JsonObject; import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java index 2f293ec6a1..1e484c9990 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/BrainsweepeeEmiStack.java @@ -3,14 +3,12 @@ import at.petrak.hexcasting.client.ClientTickCounter; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import dev.emi.emi.api.stack.EmiStack; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.core.component.DataComponentPatch; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java index 04aa92c6b8..9466a4fa20 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/EmiPhialRecipe.java @@ -11,7 +11,6 @@ import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.Random; import java.util.concurrent.ThreadLocalRandom; import java.util.stream.Collectors; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java index ecde4a1b63..0d327f26eb 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/interop/emi/HexEMIPlugin.java @@ -10,7 +10,6 @@ import dev.emi.emi.api.render.EmiTexture; import dev.emi.emi.api.stack.EmiIngredient; import dev.emi.emi.api.stack.EmiStack; -import net.minecraft.core.Holder; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.crafting.RecipeHolder; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java index 8057ac2ea5..ae9959c081 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/loot/FabricHexLootModJankery.java @@ -1,8 +1,8 @@ package at.petrak.hexcasting.fabric.loot; import at.petrak.hexcasting.common.lib.HexItems; -import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; import at.petrak.hexcasting.common.loot.AddHexToAncientCypherFunc; +import at.petrak.hexcasting.common.loot.AddPerWorldPatternToScrollFunc; import at.petrak.hexcasting.fabric.FabricHexInitializer; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java index 2c856a896f..00beea7b0e 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/mixin/client/FabricModelManagerMixin.java @@ -6,15 +6,12 @@ import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.client.resources.model.ModelManager; import net.minecraft.client.resources.model.ModelResourceLocation; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.util.profiling.ProfilerFiller; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; import java.util.HashMap; import java.util.Map; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java index e9a3a00062..c7e2346e9b 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/network/FabricPacketHandler.java @@ -4,15 +4,12 @@ import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.ServerPlayer; import org.apache.logging.log4j.util.TriConsumer; import java.util.function.Consumer; -import java.util.function.Function; public class FabricPacketHandler { public static void initPackets() { diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java index 1785b26f45..5f5b5164a8 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricModConditionalIngredient.java @@ -1,16 +1,11 @@ package at.petrak.hexcasting.fabric.recipe; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParseException; import com.mojang.serialization.Codec; -import com.mojang.serialization.JsonOps; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; @@ -19,7 +14,6 @@ import net.minecraft.world.item.crafting.Ingredient; import javax.annotation.Nullable; - import java.util.Arrays; import java.util.List; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java index 107e369a21..217441d137 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/recipe/FabricUnsealedIngredient.java @@ -1,34 +1,22 @@ package at.petrak.hexcasting.fabric.recipe; -import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.utils.NBTHelper; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.mojang.serialization.Codec; -import com.mojang.serialization.JsonOps; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredient; import net.fabricmc.fabric.api.recipe.v1.ingredient.CustomIngredientSerializer; import net.minecraft.core.component.DataComponents; -import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.component.CustomData; import net.minecraft.world.item.crafting.Ingredient; -import net.minecraft.world.item.crafting.ShapedRecipe; -import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; -import javax.xml.crypto.Data; import java.util.Arrays; import java.util.List; -import java.util.Objects; -import java.util.stream.Stream; import static at.petrak.hexcasting.api.HexAPI.modLoc; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java index aa2acf1ab1..18c9ff8e45 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricRegister.java @@ -1,10 +1,7 @@ package at.petrak.hexcasting.fabric.xplat; import at.petrak.hexcasting.xplat.IXplatRegister; -import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder; import net.minecraft.core.Holder; -import net.minecraft.core.MappedRegistry; -import net.minecraft.core.RegistrationInfo; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.resources.ResourceKey; diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java index c9bcf4c9c0..5d18904532 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/xplat/FabricXplatImpl.java @@ -21,7 +21,6 @@ import at.petrak.hexcasting.api.player.AltioraAbility; import at.petrak.hexcasting.api.player.FlightAbility; import at.petrak.hexcasting.api.player.Sentinel; -import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.common.lib.HexRegistries; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java index 1440b80076..f56ba11821 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexClientInitializer.java @@ -1,6 +1,5 @@ package at.petrak.hexcasting.forge; -import at.petrak.hexcasting.api.client.ClientCastingStack; import at.petrak.hexcasting.client.ClientTickCounter; import at.petrak.hexcasting.client.RegisterClientStuff; import at.petrak.hexcasting.client.ShiftScrollListener; @@ -17,7 +16,6 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.color.block.BlockColors; import net.minecraft.client.color.item.ItemColors; -import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.PlayerModel; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.particle.ParticleProvider; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java index 1e7f103253..f93051df4f 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/ForgeHexInitializer.java @@ -13,7 +13,10 @@ import at.petrak.hexcasting.common.items.ItemJewelerHammer; import at.petrak.hexcasting.common.lib.*; import at.petrak.hexcasting.common.lib.hex.*; -import at.petrak.hexcasting.common.misc.*; +import at.petrak.hexcasting.common.misc.AkashicTreeGrower; +import at.petrak.hexcasting.common.misc.BrainsweepingEvents; +import at.petrak.hexcasting.common.misc.PlayerPositionRecorder; +import at.petrak.hexcasting.common.misc.RegisterMisc; import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java index a8e0e77ba8..496228efa0 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapEntityIotaHolder.java @@ -3,8 +3,6 @@ import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.addldata.ItemDelegatingEntityIotaHolder; import at.petrak.hexcasting.api.casting.iota.Iota; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; import org.jetbrains.annotations.Nullable; public abstract class CapEntityIotaHolder implements ADIotaHolder { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemHexHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemHexHolder.java index 6fb0f0b1d6..5e246d01f9 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemHexHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemHexHolder.java @@ -1,8 +1,8 @@ package at.petrak.hexcasting.forge.cap.adimpl; import at.petrak.hexcasting.api.addldata.ADHexHolder; -import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.casting.iota.Iota; +import at.petrak.hexcasting.api.item.HexHolderItem; import at.petrak.hexcasting.api.pigment.FrozenPigment; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.item.ItemStack; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java index 603742bf3c..831c11b30d 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapItemIotaHolder.java @@ -1,10 +1,8 @@ package at.petrak.hexcasting.forge.cap.adimpl; import at.petrak.hexcasting.api.addldata.ADIotaHolder; -import at.petrak.hexcasting.api.item.IotaHolderItem; import at.petrak.hexcasting.api.casting.iota.Iota; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; +import at.petrak.hexcasting.api.item.IotaHolderItem; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.Nullable; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java index c0e5f947c8..329ac5b90a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/cap/adimpl/CapStaticIotaHolder.java @@ -2,9 +2,6 @@ import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.casting.iota.Iota; -import at.petrak.hexcasting.api.casting.iota.IotaType; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.server.level.ServerLevel; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.Nullable; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java index aecbe848c5..140854af8a 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/ForgeHexLootModGen.java @@ -3,9 +3,9 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.common.loot.HexLootHandler; import at.petrak.hexcasting.forge.loot.ForgeHexAmethystLootMod; +import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexLoreLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; -import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; import net.minecraft.core.HolderLookup; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java index 933b23ea7f..e06968977e 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexBlockStatesAndModels.java @@ -16,7 +16,6 @@ import net.neoforged.neoforge.client.model.generators.BlockModelBuilder; import net.neoforged.neoforge.client.model.generators.ConfiguredModel; import net.neoforged.neoforge.client.model.generators.ModelBuilder; -import net.neoforged.neoforge.client.model.generators.ModelFile; import net.neoforged.neoforge.common.data.ExistingFileHelper; import static net.neoforged.neoforge.client.model.generators.ModelProvider.BLOCK_FOLDER; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java index de67351734..de920bef71 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/datagen/xplat/HexItemModels.java @@ -4,9 +4,9 @@ import at.petrak.hexcasting.client.render.GaslightingTracker; import at.petrak.hexcasting.common.blocks.BlockQuenchedAllay; import at.petrak.hexcasting.common.items.ItemStaff; -import at.petrak.hexcasting.common.items.pigment.ItemPridePigment; import at.petrak.hexcasting.common.items.magic.ItemMediaBattery; import at.petrak.hexcasting.common.items.magic.ItemPackagedHex; +import at.petrak.hexcasting.common.items.pigment.ItemPridePigment; import at.petrak.hexcasting.common.items.storage.ItemFocus; import at.petrak.hexcasting.common.items.storage.ItemScroll; import at.petrak.hexcasting.common.items.storage.ItemSlate; @@ -14,7 +14,6 @@ import at.petrak.hexcasting.common.lib.HexBlocks; import at.petrak.hexcasting.common.lib.HexItems; import at.petrak.paucal.forge.api.datagen.PaucalItemModelProvider; -import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; @@ -27,7 +26,6 @@ import java.util.Arrays; import java.util.Objects; -import java.util.concurrent.CompletableFuture; import java.util.function.BiFunction; public class HexItemModels extends PaucalItemModelProvider { diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java index 9c739a32a0..00baa5f726 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/BrainsweepRecipeCategory.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.forge.interop.jei; import at.petrak.hexcasting.client.ClientTickCounter; -import at.petrak.hexcasting.common.casting.actions.spells.OpEdifySapling; import at.petrak.hexcasting.common.recipe.BrainsweepRecipe; import com.mojang.blaze3d.systems.RenderSystem; import mezz.jei.api.gui.builder.IRecipeLayoutBuilder; @@ -22,9 +21,6 @@ import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.NotNull; -import java.util.Collections; -import java.util.List; - import static at.petrak.hexcasting.api.HexAPI.modLoc; import static at.petrak.hexcasting.client.render.RenderLib.renderEntity; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java index 46d1645998..d5c308450b 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/interop/jei/PhialRecipeCategory.java @@ -1,7 +1,6 @@ package at.petrak.hexcasting.forge.interop.jei; import at.petrak.hexcasting.api.mod.HexTags; -import at.petrak.hexcasting.common.casting.actions.spells.OpEdifySapling; import at.petrak.hexcasting.common.casting.actions.spells.OpMakeBattery; import at.petrak.hexcasting.interop.utils.PhialRecipeStackBuilder; import mezz.jei.api.gui.builder.IRecipeLayoutBuilder; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java index e4361c7bce..4338e18751 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexIngredientTypes.java @@ -1,16 +1,9 @@ package at.petrak.hexcasting.forge.lib; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.forge.loot.ForgeHexAmethystLootMod; -import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; -import at.petrak.hexcasting.forge.loot.ForgeHexLoreLootMod; -import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; import at.petrak.hexcasting.forge.recipe.ForgeModConditionalIngredient; import at.petrak.hexcasting.forge.recipe.ForgeUnsealedIngredient; -import com.mojang.serialization.MapCodec; import net.neoforged.neoforge.common.crafting.IngredientType; -import net.neoforged.neoforge.common.loot.IGlobalLootModifier; -import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; import net.neoforged.neoforge.registries.NeoForgeRegistries; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java index e6e36db9b4..bc7a337fc1 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/lib/ForgeHexLootMods.java @@ -2,12 +2,10 @@ import at.petrak.hexcasting.api.HexAPI; import at.petrak.hexcasting.forge.loot.ForgeHexAmethystLootMod; +import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexLoreLootMod; import at.petrak.hexcasting.forge.loot.ForgeHexScrollLootMod; -import at.petrak.hexcasting.forge.loot.ForgeHexCypherLootMod; -import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; -import net.minecraft.core.registries.Registries; import net.neoforged.neoforge.common.loot.IGlobalLootModifier; import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java index 2d82273ca8..6005506cc6 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeModConditionalIngredient.java @@ -2,30 +2,21 @@ import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParseException; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import net.neoforged.neoforge.common.crafting.ICustomIngredient; import net.neoforged.neoforge.common.crafting.IngredientType; -import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; import java.util.Arrays; -import java.util.Objects; import java.util.stream.Stream; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public class ForgeModConditionalIngredient implements ICustomIngredient { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( Ingredient.CODEC.fieldOf("if_loaded").forGetter(ForgeModConditionalIngredient::getMain), diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java index 6ed5d4e387..50c77dbb71 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/recipe/ForgeUnsealedIngredient.java @@ -2,33 +2,21 @@ import at.petrak.hexcasting.api.addldata.ADIotaHolder; import at.petrak.hexcasting.api.casting.iota.NullIota; -import at.petrak.hexcasting.api.item.IotaHolderItem; -import at.petrak.hexcasting.api.utils.NBTHelper; import at.petrak.hexcasting.common.lib.HexDataComponents; import at.petrak.hexcasting.forge.lib.ForgeHexIngredientTypes; import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; -import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.RegistryFriendlyByteBuf; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.util.Unit; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; import net.neoforged.neoforge.common.crafting.ICustomIngredient; import net.neoforged.neoforge.common.crafting.IngredientType; -import org.jetbrains.annotations.NotNull; import javax.annotation.Nullable; -import java.util.Objects; import java.util.Optional; import java.util.stream.Stream; -import static at.petrak.hexcasting.api.HexAPI.modLoc; - public class ForgeUnsealedIngredient implements ICustomIngredient { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( ItemStack.CODEC.fieldOf("stack").forGetter(ForgeUnsealedIngredient::getStack) diff --git a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java index 9410eecac3..5acbe02d87 100644 --- a/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java +++ b/Neoforge/src/main/java/at/petrak/hexcasting/forge/xplat/ForgeXplatImpl.java @@ -23,8 +23,8 @@ import at.petrak.hexcasting.api.player.Sentinel; import at.petrak.hexcasting.api.utils.HexUtils; import at.petrak.hexcasting.common.lib.HexRegistries; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredientType; +import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredientType; import at.petrak.hexcasting.forge.cap.CapSyncers; import at.petrak.hexcasting.forge.cap.HexCapabilities; import at.petrak.hexcasting.forge.interop.curios.CuriosApiInterop; diff --git a/build.gradle b/build.gradle index 0f7241d1aa..861df6d871 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,3 @@ -import org.jetbrains.kotlin.gradle.dsl.JvmTarget import at.petrak.pkpcpbp.MiscUtil plugins { From a8e70cb55ecdbb96baa243bf5ad895584a261829 Mon Sep 17 00:00:00 2001 From: Noelle Date: Sat, 21 Feb 2026 17:29:48 -0600 Subject: [PATCH 40/51] Old EntityIota behavior restored --- .../hexcasting/api/casting/ActionUtils.kt | 36 +++++-------- .../api/casting/eval/vm/CastingVM.kt | 17 +++++- .../api/casting/iota/EntityIota.java | 54 +++++-------------- .../hexcasting/api/casting/iota/IotaType.java | 5 ++ .../api/casting/mishaps/MishapOthersName.kt | 2 +- .../petrak/hexcasting/api/utils/HexUtils.kt | 18 +++++++ .../impetuses/BlockRedstoneImpetus.java | 2 +- 7 files changed, 64 insertions(+), 70 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt index 5c52f96e05..d67e0693b4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/ActionUtils.kt @@ -4,10 +4,10 @@ package at.petrak.hexcasting.api.casting import at.petrak.hexcasting.api.casting.iota.* import at.petrak.hexcasting.api.casting.math.HexPattern -import at.petrak.hexcasting.api.casting.mishaps.MishapEntityNotFound import at.petrak.hexcasting.api.casting.mishaps.MishapInvalidIota import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.api.utils.asTranslatedComponent +import at.petrak.hexcasting.api.utils.validateIota import com.mojang.datafixers.util.Either import net.minecraft.core.BlockPos import net.minecraft.server.level.ServerLevel @@ -37,25 +37,7 @@ fun List.getDouble(idx: Int, argc: Int = 0): Double { fun List.getEntity(level: ServerLevel, idx: Int, argc: Int = 0): Entity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - return x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) - } else { - throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") - } -} - -fun List.getOrFindEntity(level: ServerLevel, idx: Int, argc: Int = 0): Entity? { - val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } - if (x is EntityIota) { - return x.getOrFindEntity(level) - } else { - throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") - } -} - -fun List.getCachedEntity(idx: Int, argc: Int = 0): Entity? { - val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } - if (x is EntityIota) { - return x.cachedEntity; + return x.getEntity(level) } else { throw MishapInvalidIota.ofType(x, if (argc == 0) idx else argc - (idx + 1), "entity") } @@ -102,7 +84,7 @@ fun List.getBool(idx: Int, argc: Int = 0): Boolean { fun List.getItemEntity(level: ServerLevel, idx: Int, argc: Int = 0): ItemEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) + val e = x.getEntity(level) if (e is ItemEntity) return e } @@ -112,7 +94,7 @@ fun List.getItemEntity(level: ServerLevel, idx: Int, argc: Int = 0): ItemE fun List.getPlayer(level: ServerLevel, idx: Int, argc: Int = 0): ServerPlayer { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) + val e = x.getEntity(level) if (e is ServerPlayer) return e } @@ -122,7 +104,7 @@ fun List.getPlayer(level: ServerLevel, idx: Int, argc: Int = 0): ServerPla fun List.getMob(level: ServerLevel, idx: Int, argc: Int = 0): Mob { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) + val e = x.getEntity(level) if (e is Mob) return e } @@ -132,7 +114,7 @@ fun List.getMob(level: ServerLevel, idx: Int, argc: Int = 0): Mob { fun List.getLivingEntityButNotArmorStand(level: ServerLevel, idx: Int, argc: Int = 0): LivingEntity { val x = this.getOrElse(idx) { throw MishapNotEnoughArgs(idx + 1, this.size) } if (x is EntityIota) { - val e = x.getOrFindEntity(level) ?: throw MishapEntityNotFound(x.entityId, x.cachedEntityName) + val e = x.getEntity(level) if (e is LivingEntity && e !is ArmorStand) return e } @@ -328,6 +310,12 @@ fun aplKinnie(operatee: Either, fn: DoubleUnaryOperator): Iota = { vec -> Vec3Iota(Vec3(fn.applyAsDouble(vec.x), fn.applyAsDouble(vec.y), fn.applyAsDouble(vec.z))) } ) +// Can't define the validateSubIotas helper method for ListIotas in its' IotaType, so I'm doing it here instead +fun ListIota.validateSubIotas(level: ServerLevel) : ListIota { + val list = this.list.toList().map { iota -> validateIota(iota, level) } + return ListIota(list) +} + inline val Boolean.asActionResult get() = listOf(BooleanIota(this)) inline val Double.asActionResult get() = listOf(DoubleIota(this)) inline val Number.asActionResult get() = listOf(DoubleIota(this.toDouble())) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt index c6e4336a47..8529819613 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt @@ -15,8 +15,12 @@ import at.petrak.hexcasting.api.casting.mishaps.Mishap import at.petrak.hexcasting.api.casting.mishaps.MishapInternalException import at.petrak.hexcasting.api.casting.mishaps.MishapStackSize import at.petrak.hexcasting.api.casting.mishaps.MishapTooManyCloseParens +import at.petrak.hexcasting.api.utils.validateIota +import at.petrak.hexcasting.api.utils.validateIotaList import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import net.minecraft.nbt.CompoundTag +import net.minecraft.nbt.NbtOps +import net.minecraft.nbt.Tag import net.minecraft.server.level.ServerLevel /** @@ -40,6 +44,9 @@ class CastingVM(var image: CastingImage, val env: CastingEnvironment) { * Mutates this */ fun queueExecuteAndWrapIotas(iotas: List, world: ServerLevel): ExecutionClientView { + this.image = image.copy( + stack = validateIotaList(this.image.stack, world) + ) // Initialize the continuation stack to a single top-level eval for all iotas. var continuation = SpellContinuation.Done.pushFrame(FrameEvaluate(SpellList.LList(0, iotas), false)) // Begin aggregating info @@ -87,10 +94,16 @@ class CastingVM(var image: CastingImage, val env: CastingEnvironment) { if (lastResolutionType.success) ResolvedPatternType.EVALUATED else ResolvedPatternType.ERRORED } - val ravenmind: CompoundTag? = image.userData - ?.takeIf { it.contains(HexAPI.RAVENMIND_USERDATA) } + var ravenmind: CompoundTag? = image.userData + .takeIf { it.contains(HexAPI.RAVENMIND_USERDATA) } ?.getCompound(HexAPI.RAVENMIND_USERDATA) + if (ravenmind != null) { + val test = IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, ravenmind).getOrThrow() + val newIota = validateIota(test, world) + ravenmind = IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, newIota).getOrThrow() as CompoundTag? + } + val isStackClear = image.stack.isEmpty() && image.parenCount == 0 && !image.escapeNext && ravenmind == null this.env.postCast(image) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java index 69c2b23cee..b06d89f6c6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/EntityIota.java @@ -28,13 +28,10 @@ public class EntityIota extends Iota { private final UUID entityId; @Nullable - private WeakReference cachedEntity; - @Nullable - private Component entityName; + private final Component entityName; public EntityIota(@NotNull Entity e) { this(e.getUUID(), getEntityNameWithInline(e)); - this.cachedEntity = new WeakReference<>(e); } public EntityIota(UUID entityId, @Nullable Component entityName) { @@ -47,46 +44,11 @@ public UUID getEntityId() { return entityId; } - @Nullable - public Entity getOrFindEntity(ServerLevel level) { - // First, let's try to get it from weak reference - var entity = getCachedEntity(); - if (entity != null && !entity.isRemoved()) - return entity; - // Now let's try to fetch it from the world - entity = level.getEntity(entityId); - // Store in weak reference - if (entity != null) { - cachedEntity = new WeakReference<>(entity); - if (entity.isRemoved()) - return null; - } - - return entity; - } - - @Nullable - public Entity getCachedEntity() { - if (cachedEntity != null) - if (!cachedEntity.refersTo(null)) - return cachedEntity.get(); - else - cachedEntity = null; // Clear weakref - return null; + public Entity getEntity(ServerLevel level) { + return level.getEntity(entityId); } public @Nullable Component getEntityName() { - var ent = getCachedEntity(); - if(ent != null) { - var name = getEntityNameWithInline(ent); - this.entityName = name; - return name; - } - - return getCachedEntityName(); - } - - public @Nullable Component getCachedEntityName() { return entityName; } @@ -104,7 +66,7 @@ public boolean isTruthy() { @Override public Component display() { - var name = getCachedEntityName(); + var name = getEntityName(); return name != null ? name.copy().withStyle(ChatFormatting.AQUA) : Component.translatable("hexcasting.spelldata.entity.whoknows"); } @@ -125,6 +87,8 @@ private static Component getEntityNameWithInline(Entity entity) { return baseName.append(Component.literal(": ")).append(inlineEnt); } + + public static IotaType TYPE = new IotaType<>() { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( @@ -138,6 +102,12 @@ private static Component getEntityNameWithInline(Entity entity) { (a, b) -> new EntityIota(a, b.orElse(null)) ); + @Override + public boolean validate(EntityIota iota, ServerLevel level) { + var entity = iota.getEntity(level); + return entity != null; + } + @Override public MapCodec codec() { return CODEC; diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java index 7bcdff1afe..a2bfc49741 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/iota/IotaType.java @@ -11,6 +11,7 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.codec.ByteBufCodecs; import net.minecraft.network.codec.StreamCodec; +import net.minecraft.server.level.ServerLevel; import java.util.List; import java.util.function.Function; @@ -57,6 +58,10 @@ public abstract class IotaType { .registry(HexRegistries.IOTA_TYPE) .dispatch(Iota::getType, IotaType::streamCodec); + public boolean validate(T iota, ServerLevel level) { + return true; + } + /** * Checks if an Iterable Iota object is too large for deserde. * @param examinee diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt index 83366e6501..1daa4bab16 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt @@ -41,7 +41,7 @@ class MishapOthersName(val confidant: Player) : Mishap() { val datumToCheck = poolToSearch.removeFirst() if(datumToCheck is EntityIota) { - var ent = datumToCheck.getOrFindEntity(level) + var ent = datumToCheck.getEntity(level) if(ent is Player && ent != caster) return ent } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt index 0973ab74bf..aa4999873b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/utils/HexUtils.kt @@ -2,7 +2,12 @@ package at.petrak.hexcasting.api.utils +import at.petrak.hexcasting.api.casting.iota.Iota +import at.petrak.hexcasting.api.casting.iota.IotaType +import at.petrak.hexcasting.api.casting.iota.ListIota +import at.petrak.hexcasting.api.casting.iota.NullIota import at.petrak.hexcasting.api.casting.math.HexCoord +import at.petrak.hexcasting.api.casting.validateSubIotas import net.minecraft.ChatFormatting import net.minecraft.core.HolderLookup import net.minecraft.core.Registry @@ -12,6 +17,7 @@ import net.minecraft.network.chat.MutableComponent import net.minecraft.network.chat.Style import net.minecraft.resources.ResourceKey import net.minecraft.resources.ResourceLocation +import net.minecraft.server.level.ServerLevel import net.minecraft.tags.TagKey import net.minecraft.world.InteractionHand import net.minecraft.world.item.ItemStack @@ -303,3 +309,15 @@ fun isOfTag(registry: Registry, loc: ResourceLocation, tag: TagKey): B } +@Suppress("UNCHECKED_CAST") +fun validateIota(iota: T, serverLevel: ServerLevel): Iota { + return when (iota) { + is ListIota -> iota.validateSubIotas(serverLevel) + else -> if ((iota.type as IotaType).validate(iota, serverLevel)) iota else NullIota() + } +} + +fun validateIotaList(iotaList: List, serverLevel: ServerLevel): List { + return iotaList.map { validateIota(it, serverLevel) } +} + diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java index a79a2da738..3f745ef20d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRedstoneImpetus.java @@ -70,7 +70,7 @@ protected ItemInteractionResult useItemOn(ItemStack stack, BlockState state, Lev if (datumContainer != null) { var stored = datumContainer.readIota(); if (stored instanceof EntityIota eieio) { - var entity = eieio.getOrFindEntity(sLevel); + var entity = eieio.getEntity(sLevel); if (entity instanceof Player iotaPlayer) { // phew, we got something tile.setPlayer(iotaPlayer.getGameProfile(), entity.getUUID()); From 8f6089ad8b290b4e0cccd5e83871085ac74208d4 Mon Sep 17 00:00:00 2001 From: Noelle Date: Wed, 4 Mar 2026 10:46:47 -0600 Subject: [PATCH 41/51] Made a few more changes as well as refactoring, ready for review --- .../api/casting/eval/ResolvedPattern.kt | 4 +- .../api/casting/eval/vm/CastingImage.kt | 12 ++++ .../api/casting/eval/vm/CastingVM.kt | 6 +- .../api/casting/mishaps/MishapBadEntity.kt | 2 +- .../casting/mishaps/MishapEntityTooFarAway.kt | 3 +- .../api/casting/mishaps/MishapImmuneEntity.kt | 2 +- .../api/casting/mishaps/MishapOthersName.kt | 2 +- .../hexcasting/api/item/IotaHolderItem.java | 2 +- .../hexcasting/api/item/VariantItem.java | 4 +- .../client/RegisterClientStuff.java | 4 +- .../impetuses/BlockRightClickImpetus.java | 1 - .../casting/actions/local/OpPeekLocal.kt | 8 ++- .../casting/actions/local/OpPushLocal.kt | 4 +- .../common/command/PatternResLocArgument.java | 58 ------------------ .../hexcasting/common/items/ItemStaff.java | 6 +- .../common/items/magic/ItemAncientCypher.java | 2 +- .../items/magic/ItemCreativeUnlocker.java | 10 +--- .../common/items/magic/ItemPackagedHex.java | 8 +-- .../common/items/storage/ItemFocus.java | 12 ++-- .../common/items/storage/ItemSpellbook.java | 60 +++++++++---------- .../common/items/storage/ItemThoughtKnot.java | 4 +- .../HexBrainsweepeeIngredients.java} | 6 +- .../common/lib/HexDataComponents.java | 16 ++--- .../HexStateIngredients.java} | 6 +- .../loot/AddHexToAncientCypherFunc.java | 8 +-- .../common/loot/AmethystReducerFunc.java | 4 +- .../common/recipe/BrainsweepRecipe.java | 12 ++-- .../common/recipe/SealThingsRecipe.java | 2 +- .../brainsweep/EntityTagIngredient.java | 3 +- .../brainsweep/EntityTypeIngredient.java | 3 +- .../brainsweep/VillagerIngredient.java | 3 +- .../state/StateIngredientBlock.java | 3 +- .../state/StateIngredientBlockState.java | 3 +- .../state/StateIngredientBlocks.java | 3 +- .../ingredient/state/StateIngredientTag.java | 3 +- .../state/StateIngredientTagExcluding.java | 7 ++- .../datagen/recipe/HexplatRecipes.java | 33 +++++----- .../interop/inline/InlinePatternRenderer.java | 1 + .../xplat/IClientXplatAbstractions.java | 6 +- .../hexcasting/xplat/IXplatAbstractions.java | 3 +- .../en_us/entries/casting/mishaps.json | 5 -- .../hexcasting/fabric/FabricHexInitializer.kt | 8 +-- .../fabric/cc/HexCardinalComponents.java | 6 +- .../hexcasting/forge/ForgeHexInitializer.java | 8 +-- 44 files changed, 167 insertions(+), 199 deletions(-) delete mode 100644 Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java rename Common/src/main/java/at/petrak/hexcasting/common/{recipe/ingredient/brainsweep/BrainsweepeeIngredients.java => lib/HexBrainsweepeeIngredients.java} (96%) rename Common/src/main/java/at/petrak/hexcasting/common/{recipe/ingredient/state/StateIngredients.java => lib/HexStateIngredients.java} (96%) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt index ac4ec14fbe..1f9c80db38 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ResolvedPattern.kt @@ -16,7 +16,7 @@ data class ResolvedPattern(val pattern: HexPattern, val origin: HexCoord, var ty companion object { @JvmField val CODEC: Codec = RecordCodecBuilder.create({instance -> instance.group( - HexPattern.CODEC.fieldOf("pattern").forGetter { it.pattern }, + HexPattern.CODEC.fieldOf("Pattern").forGetter { it.pattern }, Codec.INT.fieldOf("OriginQ").forGetter { it.origin.q }, Codec.INT.fieldOf("OriginR").forGetter { it.origin.r }, Codec.STRING.xmap( @@ -33,7 +33,7 @@ data class ResolvedPattern(val pattern: HexPattern, val origin: HexCoord, var ty ByteBufCodecs.VAR_INT, { it.origin.r }, ByteBufCodecs.STRING_UTF8.map( { ResolvedPatternType.fromString(it) }, - { it.name.lowercase() } + { it.name } ), ResolvedPattern::type, ::ResolvedPattern ) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt index 426fd8adea..ea496e43ff 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt @@ -3,14 +3,17 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.HexAPI import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType +import at.petrak.hexcasting.api.utils.getCompound import at.petrak.hexcasting.api.utils.getOrCreateCompound import at.petrak.hexcasting.api.utils.putCompound import com.mojang.serialization.Codec import com.mojang.serialization.codecs.RecordCodecBuilder import net.minecraft.nbt.CompoundTag +import net.minecraft.nbt.Tag import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec import net.minecraft.world.entity.Entity +import java.util.Optional /** * The state of a casting VM, containing the stack and all @@ -65,6 +68,15 @@ data class CastingImage( */ fun withResetEscape() = this.copy(parenCount = 0, parenthesized = listOf(), escapeNext = false) + /** + * Returns this image's ravenmind in an Optional wrapper. + */ + fun ravenmind() : Optional { + return Optional.ofNullable(userData.getCompound(HexAPI.RAVENMIND_USERDATA)) + } + + + companion object { @JvmStatic val CODEC = RecordCodecBuilder.create { inst -> diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt index 8529819613..287e844918 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingVM.kt @@ -22,6 +22,8 @@ import net.minecraft.nbt.CompoundTag import net.minecraft.nbt.NbtOps import net.minecraft.nbt.Tag import net.minecraft.server.level.ServerLevel +import kotlin.jvm.optionals.getOrElse +import kotlin.jvm.optionals.getOrNull /** * The virtual machine! This is the glue that determines the next iteration of a [CastingImage], using a @@ -94,9 +96,7 @@ class CastingVM(var image: CastingImage, val env: CastingEnvironment) { if (lastResolutionType.success) ResolvedPatternType.EVALUATED else ResolvedPatternType.ERRORED } - var ravenmind: CompoundTag? = image.userData - .takeIf { it.contains(HexAPI.RAVENMIND_USERDATA) } - ?.getCompound(HexAPI.RAVENMIND_USERDATA) + var ravenmind: CompoundTag? = image.ravenmind().getOrNull() if (ravenmind != null) { val test = IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, ravenmind).getOrThrow() diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt index f176e62769..3ea3971c7c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapBadEntity.kt @@ -19,7 +19,7 @@ class MishapBadEntity(val entity: Entity, val wanted: Component) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = - error("bad_entity", wanted, entity.displayName?.plainCopy()?.aqua ?: entity.type.description.plainCopy().aqua) + error("bad_entity", wanted, (entity.displayName ?: entity.type.description).plainCopy().aqua) companion object { @JvmStatic diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt index d78bb5c187..232a5a0ef1 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapEntityTooFarAway.kt @@ -3,6 +3,7 @@ package at.petrak.hexcasting.api.casting.mishaps import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.pigment.FrozenPigment +import at.petrak.hexcasting.api.utils.aqua import net.minecraft.network.chat.Component import net.minecraft.world.entity.Entity import net.minecraft.world.item.DyeColor @@ -16,5 +17,5 @@ class MishapEntityTooFarAway(val entity: Entity) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context): Component = - error("entity_too_far", entity.displayName?.plainCopy() ?: entity.type.description) + error("entity_too_far", (entity.displayName ?: entity.type.description).plainCopy()) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt index b67f4de11d..e0438a895b 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapImmuneEntity.kt @@ -16,5 +16,5 @@ class MishapImmuneEntity(val entity: Entity) : Mishap() { } override fun errorMessage(ctx: CastingEnvironment, errorCtx: Context) = - error("immune_entity", entity.displayName?.plainCopy()?.aqua ?: entity.type.description.plainCopy().aqua) + error("immune_entity", (entity.displayName ?: entity.type.description).plainCopy().aqua) } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt index 1daa4bab16..3a08ff5f33 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/mishaps/MishapOthersName.kt @@ -41,7 +41,7 @@ class MishapOthersName(val confidant: Player) : Mishap() { val datumToCheck = poolToSearch.removeFirst() if(datumToCheck is EntityIota) { - var ent = datumToCheck.getEntity(level) + val ent = datumToCheck.getEntity(level) if(ent is Player && ent != caster) return ent } diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java index 016c0b51f7..3b0c804dd6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/IotaHolderItem.java @@ -29,7 +29,7 @@ default Iota readIota(ItemStack stack) { throw new IllegalArgumentException("stack's item must be an IotaHolderItem but was " + stack.getItem()); } - return stack.get(HexDataComponents.IOTA); + return stack.get(HexDataComponents.IOTA_HOLDER_IOTA); } /** diff --git a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java index 68c7d33805..6475fd8e7a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java +++ b/Common/src/main/java/at/petrak/hexcasting/api/item/VariantItem.java @@ -14,12 +14,12 @@ public interface VariantItem { int numVariants(); default int getVariant(ItemStack stack) { - var variant = stack.get(HexDataComponents.VARIANT); + var variant = stack.get(HexDataComponents.ITEM_VARIANT); return variant != null ? variant : 0; } default void setVariant(ItemStack stack, int variant) { - stack.set(HexDataComponents.VARIANT, clampVariant(variant)); + stack.set(HexDataComponents.ITEM_VARIANT, clampVariant(variant)); } default int clampVariant(int variant) { diff --git a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java index 2a0e164aa8..9d6fbb257e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/RegisterClientStuff.java @@ -56,7 +56,7 @@ public class RegisterClientStuff { public static void init() { registerSealableDataHolderOverrides(HexItems.FOCUS, - stack -> stack.has(HexDataComponents.IOTA), + stack -> stack.has(HexDataComponents.IOTA_HOLDER_IOTA), ItemFocus::isSealed); registerSealableDataHolderOverrides(HexItems.SPELLBOOK, stack -> HexItems.SPELLBOOK.readIota(stack) != null, @@ -69,7 +69,7 @@ public static void init() { registerVariantOverrides(HexItems.ARTIFACT, HexItems.ARTIFACT::getVariant); IClientXplatAbstractions.INSTANCE.registerItemProperty(HexItems.THOUGHT_KNOT, ItemThoughtKnot.WRITTEN_PRED, (stack, level, holder, holderID) -> { - if (stack.has(HexDataComponents.IOTA)) { + if (stack.has(HexDataComponents.IOTA_HOLDER_IOTA)) { return 1; } else { return 0; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java index 3f442ef9e2..d6c770757a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/blocks/circles/impetuses/BlockRightClickImpetus.java @@ -42,7 +42,6 @@ protected InteractionResult useWithoutItem(BlockState state, Level level, BlockP var tile = level.getBlockEntity(pos); if (tile instanceof BlockEntityRightClickImpetus impetus) { if (player instanceof ServerPlayer sPlayer) { -// impetus.activateSpellCircle(serverPlayer); impetus.startExecution(sPlayer); } return InteractionResult.SUCCESS; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt index e2c254a785..bbf1fc83d5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPeekLocal.kt @@ -6,20 +6,24 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.eval.OperationResult import at.petrak.hexcasting.api.casting.eval.vm.CastingImage import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation +import at.petrak.hexcasting.api.casting.iota.GarbageIota import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.iota.NullIota import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import net.minecraft.nbt.NbtOps +import kotlin.jvm.optionals.getOrElse object OpPeekLocal : Action { override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { val stack = image.stack.toMutableList() + val ravenmind = image.ravenmind() - val rm = if (image.userData.contains(HexAPI.RAVENMIND_USERDATA)) { - IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, image.userData.getCompound(HexAPI.RAVENMIND_USERDATA)).getOrThrow() + val rm = if (ravenmind.isPresent) { + IotaType.TYPED_CODEC.parse(NbtOps.INSTANCE, ravenmind.get()).orThrow } else { NullIota() } + stack.add(rm) // does not mutate userdata diff --git a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt index 84292e16a9..74061a5b53 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt +++ b/Common/src/main/java/at/petrak/hexcasting/common/casting/actions/local/OpPushLocal.kt @@ -6,11 +6,13 @@ import at.petrak.hexcasting.api.casting.eval.CastingEnvironment import at.petrak.hexcasting.api.casting.eval.OperationResult import at.petrak.hexcasting.api.casting.eval.vm.CastingImage import at.petrak.hexcasting.api.casting.eval.vm.SpellContinuation +import at.petrak.hexcasting.api.casting.iota.GarbageIota import at.petrak.hexcasting.api.casting.iota.IotaType import at.petrak.hexcasting.api.casting.mishaps.MishapNotEnoughArgs import at.petrak.hexcasting.common.lib.hex.HexEvalSounds import at.petrak.hexcasting.common.lib.hex.HexIotaTypes import net.minecraft.nbt.NbtOps +import kotlin.jvm.optionals.getOrElse object OpPushLocal : Action { override fun operate(env: CastingEnvironment, image: CastingImage, continuation: SpellContinuation): OperationResult { @@ -23,7 +25,7 @@ object OpPushLocal : Action { if (newLocal.type == HexIotaTypes.NULL) image.userData.remove(HexAPI.RAVENMIND_USERDATA) else - image.userData.put(HexAPI.RAVENMIND_USERDATA, IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, newLocal).getOrThrow()) + image.userData.put(HexAPI.RAVENMIND_USERDATA, IotaType.TYPED_CODEC.encodeStart(NbtOps.INSTANCE, newLocal).orThrow) val image2 = image.withUsedOp().copy(stack = stack) return OperationResult(image2, listOf(), continuation, HexEvalSounds.NORMAL_EXECUTE) diff --git a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java b/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java deleted file mode 100644 index d3a8813238..0000000000 --- a/Common/src/main/java/at/petrak/hexcasting/common/command/PatternResLocArgument.java +++ /dev/null @@ -1,58 +0,0 @@ -package at.petrak.hexcasting.common.command; - -import at.petrak.hexcasting.api.casting.math.HexPattern; -import at.petrak.hexcasting.api.mod.HexTags; -import at.petrak.hexcasting.api.utils.HexUtils; -import at.petrak.hexcasting.common.casting.PatternRegistryManifest; -import at.petrak.hexcasting.xplat.IXplatAbstractions; -import com.mojang.brigadier.context.CommandContext; -import com.mojang.brigadier.exceptions.CommandSyntaxException; -import com.mojang.brigadier.exceptions.DynamicCommandExceptionType; -import com.mojang.brigadier.suggestion.Suggestions; -import com.mojang.brigadier.suggestion.SuggestionsBuilder; -import net.minecraft.commands.CommandSourceStack; -import net.minecraft.commands.SharedSuggestionProvider; -import net.minecraft.commands.arguments.ResourceLocationArgument; -import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; - -import java.util.ArrayList; -import java.util.concurrent.CompletableFuture; - -@Deprecated -public class PatternResLocArgument extends ResourceLocationArgument { - private static final DynamicCommandExceptionType ERROR_UNKNOWN_PATTERN = new DynamicCommandExceptionType( - (errorer) -> - Component.translatable("hexcasting.pattern.unknown", errorer) - ); - - public static PatternResLocArgument id() { - return new PatternResLocArgument(); - } - - @Override - public CompletableFuture listSuggestions(CommandContext context, SuggestionsBuilder builder) { - var suggestions = new ArrayList(); - var registry = IXplatAbstractions.INSTANCE.getActionRegistry(); - for (var key : registry.registryKeySet()) { - if (HexUtils.isOfTag(registry, key, HexTags.Actions.PER_WORLD_PATTERN)) { - suggestions.add(key.location().toString()); - } - } - - return SharedSuggestionProvider.suggest(suggestions, builder); - } - - public static HexPattern getPattern( - CommandContext ctx, String argumentName) throws CommandSyntaxException { - var targetId = ctx.getArgument(argumentName, ResourceLocation.class); - var targetKey = ResourceKey.create(IXplatAbstractions.INSTANCE.getActionRegistry().key(), targetId); - var foundPat = PatternRegistryManifest.getCanonicalStrokesPerWorld(targetKey, ctx.getSource().getServer().overworld()); - if (foundPat == null) { - throw ERROR_UNKNOWN_PATTERN.create(targetId); - } else { - return foundPat; - } - } -} diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index 6b5a53e72a..c787ceec74 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -45,10 +45,8 @@ public InteractionResultHolder use(Level world, Player player, Intera var vm = IXplatAbstractions.INSTANCE.getStaffcastVM(serverPlayer, hand); var patterns = IXplatAbstractions.INSTANCE.getPatternsSavedInUi(serverPlayer); - var userData = vm.getImage().getUserData(); - CompoundTag ravenmind = null; - if(userData.contains(HexAPI.RAVENMIND_USERDATA)) - ravenmind = userData.getCompound(HexAPI.RAVENMIND_USERDATA); + CompoundTag ravenmind = vm.getImage().ravenmind().orElse(new CompoundTag()); + IXplatAbstractions.INSTANCE.sendPacketToPlayer(serverPlayer, new MsgOpenSpellGuiS2C(hand, patterns, vm.getImage().getStack(), ravenmind, diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java index 599dac3108..515f0c4de3 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemAncientCypher.java @@ -37,7 +37,7 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List s.withColor( - TextColor.fromRgb(Mth.hsvToRgb((((float) Util.getMillis() / 50) + shift) * 2 % 360 / 360F, 1F, 1F)))); - } - + private static MutableComponent rainbow(MutableComponent component, int shift, @Nullable Level level) { return component.withStyle((s) -> s.withColor( - TextColor.fromRgb(Mth.hsvToRgb((level.getGameTime() + shift) * 2 % 360 / 360F, 1F, 1F)))); + TextColor.fromRgb(Mth.hsvToRgb((level != null ? (level.getGameTime() + shift) : ((float) Util.getMillis() / 50)) * 2 % 360 / 360F, 1F, 1F)))); } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java index ae5dc07147..0eb4e4b332 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/magic/ItemPackagedHex.java @@ -58,17 +58,17 @@ public boolean canProvideMedia(ItemStack stack) { @Override public boolean hasHex(ItemStack stack) { - return stack.has(HexDataComponents.PATTERNS); + return stack.has(HexDataComponents.HEX_HOLDER_PATTERNS); } @Override public @Nullable List getHex(ItemStack stack, ServerLevel level) { - return stack.get(HexDataComponents.PATTERNS); + return stack.get(HexDataComponents.HEX_HOLDER_PATTERNS); } @Override public void writeHex(ItemStack stack, List program, @Nullable FrozenPigment pigment, long media) { - stack.set(HexDataComponents.PATTERNS, program); + stack.set(HexDataComponents.HEX_HOLDER_PATTERNS, program); if (pigment != null) stack.set(HexDataComponents.PIGMENT, pigment); @@ -77,7 +77,7 @@ public void writeHex(ItemStack stack, List program, @Nullable FrozenPigmen @Override public void clearHex(ItemStack stack) { - stack.remove(HexDataComponents.PATTERNS); + stack.remove(HexDataComponents.HEX_HOLDER_PATTERNS); stack.remove(HexDataComponents.PIGMENT); stack.remove(HexDataComponents.MEDIA); stack.remove(HexDataComponents.MEDIA_MAX); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java index 147ab96216..21ff3c13e2 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemFocus.java @@ -29,7 +29,7 @@ public ItemFocus(Properties pProperties) { @Override public String getDescriptionId(ItemStack stack) { - return super.getDescriptionId(stack) + (stack.has(HexDataComponents.SEALED) ? ".sealed" : ""); + return super.getDescriptionId(stack) + (stack.has(HexDataComponents.SEALED_IOTA_HOLDER) ? ".sealed" : ""); } @Override @@ -45,10 +45,10 @@ public boolean canWrite(ItemStack stack, Iota datum) { @Override public void writeDatum(ItemStack stack, Iota datum) { if (datum == null) { - stack.remove(HexDataComponents.IOTA); - stack.remove(HexDataComponents.SEALED); + stack.remove(HexDataComponents.IOTA_HOLDER_IOTA); + stack.remove(HexDataComponents.SEALED_IOTA_HOLDER); } else if (!isSealed(stack)) { - stack.set(HexDataComponents.IOTA, datum); + stack.set(HexDataComponents.IOTA_HOLDER_IOTA, datum); } } @@ -58,11 +58,11 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List tooltip, TooltipFlag isAdvanced) { boolean sealed = isSealed(stack); boolean empty = false; - if (stack.has(HexDataComponents.SELECTED_PAGE)) { - var pageIdx = stack.get(HexDataComponents.SELECTED_PAGE); + if (stack.has(HexDataComponents.SELECTED_SPELLBOOK_PAGE)) { + var pageIdx = stack.get(HexDataComponents.SELECTED_SPELLBOOK_PAGE); int highest = highestPage(stack); if (highest != 0) { if (sealed) { @@ -81,39 +81,39 @@ public void appendHoverText(ItemStack stack, TooltipContext context, List(savedNames); mutNames.put(nameKey, customName); - stack.set(HexDataComponents.PAGE_NAMES, mutNames); + stack.set(HexDataComponents.SPELLBOOK_PAGE_NAMES, mutNames); } } else { var mutNames = new HashMap(); mutNames.put(nameKey, customName); - stack.set(HexDataComponents.PAGE_NAMES, mutNames); + stack.set(HexDataComponents.SPELLBOOK_PAGE_NAMES, mutNames); } } else if(savedNames != null) { var mutNames = new HashMap<>(savedNames); mutNames.remove(nameKey); if(mutNames.isEmpty()) { - stack.remove(HexDataComponents.PAGE_NAMES); + stack.remove(HexDataComponents.SPELLBOOK_PAGE_NAMES); } else { - stack.set(HexDataComponents.PAGE_NAMES, mutNames); + stack.set(HexDataComponents.SPELLBOOK_PAGE_NAMES, mutNames); } } } public static boolean arePagesEmpty(ItemStack stack) { - var pages = stack.get(HexDataComponents.PAGES); + var pages = stack.get(HexDataComponents.SPELLBOOK_PAGES); return pages == null || pages.isEmpty(); } @@ -121,7 +121,7 @@ public static boolean arePagesEmpty(ItemStack stack) { public @Nullable Iota readIota(ItemStack stack) { int idx = getPage(stack, 1); var key = String.valueOf(idx); - var pages = stack.get(HexDataComponents.PAGES); + var pages = stack.get(HexDataComponents.SPELLBOOK_PAGES); if (pages != null && pages.containsKey(key)) { return pages.get(key); } else { @@ -148,23 +148,23 @@ public void writeDatum(ItemStack stack, Iota datum) { int idx = getPage(stack, 1); var key = String.valueOf(idx); - var pages = stack.get(HexDataComponents.PAGES); + var pages = stack.get(HexDataComponents.SPELLBOOK_PAGES); if (pages != null) { var pagesMut = new HashMap<>(pages); if (datum == null) { pagesMut.remove(key); - var seals = stack.get(HexDataComponents.PAGE_SEALS); + var seals = stack.get(HexDataComponents.SPELLBOOK_PAGE_SEALS); if(seals != null) { var sealsMut = new HashMap<>(seals); sealsMut.remove(key); if(sealsMut.isEmpty()) { - stack.remove(HexDataComponents.PAGE_SEALS); + stack.remove(HexDataComponents.SPELLBOOK_PAGE_SEALS); } else { - stack.set(HexDataComponents.PAGE_SEALS, sealsMut); + stack.set(HexDataComponents.SPELLBOOK_PAGE_SEALS, sealsMut); } } } else { @@ -172,24 +172,24 @@ public void writeDatum(ItemStack stack, Iota datum) { } if (pagesMut.isEmpty()) { - stack.remove(HexDataComponents.PAGES); + stack.remove(HexDataComponents.SPELLBOOK_PAGES); } else { - stack.set(HexDataComponents.PAGES, pagesMut); + stack.set(HexDataComponents.SPELLBOOK_PAGES, pagesMut); } } else if (datum != null) { var map = new HashMap(); map.put(key, datum); - stack.set(HexDataComponents.PAGES, map); + stack.set(HexDataComponents.SPELLBOOK_PAGES, map); } else { - var seals = stack.get(HexDataComponents.PAGE_SEALS); + var seals = stack.get(HexDataComponents.SPELLBOOK_PAGE_SEALS); if(seals != null) { var sealsMut = new HashMap<>(seals); sealsMut.remove(key); if(sealsMut.isEmpty()) { - stack.remove(HexDataComponents.PAGE_SEALS); + stack.remove(HexDataComponents.SPELLBOOK_PAGE_SEALS); } else { - stack.set(HexDataComponents.PAGE_SEALS, sealsMut); + stack.set(HexDataComponents.SPELLBOOK_PAGE_SEALS, sealsMut); } } } @@ -198,8 +198,8 @@ public void writeDatum(ItemStack stack, Iota datum) { public static int getPage(ItemStack stack, int ifEmpty) { if (arePagesEmpty(stack)) { return ifEmpty; - } else if (stack.has(HexDataComponents.SELECTED_PAGE)) { - var index = stack.get(HexDataComponents.SELECTED_PAGE); + } else if (stack.has(HexDataComponents.SELECTED_SPELLBOOK_PAGE)) { + var index = stack.get(HexDataComponents.SELECTED_SPELLBOOK_PAGE); if(index == null) return 1; if (index == 0) { @@ -216,7 +216,7 @@ public static void setSealed(ItemStack stack, boolean sealed) { String nameKey = String.valueOf(index); - var seals = stack.get(HexDataComponents.PAGE_SEALS); + var seals = stack.get(HexDataComponents.SPELLBOOK_PAGE_SEALS); var sealsMut = seals != null ? new HashMap<>(seals) : new HashMap(); @@ -227,9 +227,9 @@ public static void setSealed(ItemStack stack, boolean sealed) { } if (sealsMut.isEmpty()) { - stack.remove(HexDataComponents.PAGE_SEALS); + stack.remove(HexDataComponents.SPELLBOOK_PAGE_SEALS); } else { - stack.set(HexDataComponents.PAGE_SEALS, sealsMut); + stack.set(HexDataComponents.SPELLBOOK_PAGE_SEALS, sealsMut); } } @@ -237,7 +237,7 @@ public static boolean isSealed(ItemStack stack) { int index = getPage(stack, 1); String nameKey = String.valueOf(index); - var seals = stack.get(HexDataComponents.PAGE_SEALS); + var seals = stack.get(HexDataComponents.SPELLBOOK_PAGE_SEALS); if(seals == null) return false; var v = seals.get(nameKey); @@ -245,7 +245,7 @@ public static boolean isSealed(ItemStack stack) { } public static int highestPage(ItemStack stack) { - var pages = stack.get(HexDataComponents.PAGES); + var pages = stack.get(HexDataComponents.SPELLBOOK_PAGES); if (pages == null) { return 0; } @@ -265,9 +265,9 @@ public static int rotatePageIdx(ItemStack stack, boolean increase, Level level) idx = Math.max(1, idx); } idx = Mth.clamp(idx, 0, MAX_PAGES); - stack.set(HexDataComponents.SELECTED_PAGE, idx); + stack.set(HexDataComponents.SELECTED_SPELLBOOK_PAGE, idx); - var names = stack.getOrDefault(HexDataComponents.PAGE_NAMES, Collections.emptyMap()); + var names = stack.getOrDefault(HexDataComponents.SPELLBOOK_PAGE_NAMES, Collections.emptyMap()); int shiftedIdx = Math.max(1, idx); String nameKey = String.valueOf(shiftedIdx); Component name = names.get(nameKey); @@ -288,6 +288,6 @@ public int numVariants() { @Override public void setVariant(ItemStack stack, int variant) { if (!isSealed(stack)) - stack.set(HexDataComponents.VARIANT, clampVariant(variant)); + stack.set(HexDataComponents.ITEM_VARIANT, clampVariant(variant)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java index 076f044d8a..b601f1c7d9 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/storage/ItemThoughtKnot.java @@ -24,7 +24,7 @@ public ItemThoughtKnot(Properties properties) { @Override public boolean writeable(ItemStack stack) { - return !stack.has(HexDataComponents.IOTA); + return !stack.has(HexDataComponents.IOTA_HOLDER_IOTA); } @Override @@ -35,7 +35,7 @@ public boolean canWrite(ItemStack stack, @Nullable Iota iota) { @Override public void writeDatum(ItemStack stack, @Nullable Iota iota) { if (iota != null) { - stack.set(HexDataComponents.IOTA, iota); + stack.set(HexDataComponents.IOTA_HOLDER_IOTA, iota); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBrainsweepeeIngredients.java similarity index 96% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java rename to Common/src/main/java/at/petrak/hexcasting/common/lib/HexBrainsweepeeIngredients.java index 054619ee7f..ed5b715cfb 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/BrainsweepeeIngredients.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexBrainsweepeeIngredients.java @@ -1,7 +1,7 @@ -package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; +package at.petrak.hexcasting.common.lib; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; @@ -22,7 +22,7 @@ import java.util.List; import java.util.function.BiConsumer; -public class BrainsweepeeIngredients { +public class HexBrainsweepeeIngredients { public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE .getBrainsweepeeIngredientRegistry() .byNameCodec() diff --git a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java index 9c81dff7c9..c79dbc3e8f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexDataComponents.java @@ -53,24 +53,24 @@ public static void registerDataComponents(BiConsumer, Resou DataComponentType.>>builder() .networkSynchronized(ByteBufCodecs.optional(ByteBufCodecs.registry(HexRegistries.IOTA_TYPE))) .build()); - public static final DataComponentType VARIANT = register("variant", + public static final DataComponentType ITEM_VARIANT = register("variant", DataComponentType.builder() .persistent(Codec.intRange(0, Integer.MAX_VALUE)) .networkSynchronized(ByteBufCodecs.VAR_INT) .build()); - public static final DataComponentType SEALED = register("sealed", + public static final DataComponentType SEALED_IOTA_HOLDER = register("sealed", DataComponentType.builder() .persistent(Codec.unit(Unit.INSTANCE)) .networkSynchronized(StreamCodec.unit(Unit.INSTANCE)) .build()); // TODO port: Data components must implement equals and hashCode. Keep in mind they must also be immutable - public static final DataComponentType IOTA = register("iota", + public static final DataComponentType IOTA_HOLDER_IOTA = register("iota", DataComponentType.builder() .persistent(IotaType.TYPED_CODEC) .networkSynchronized(IotaType.TYPED_STREAM_CODEC) .build()); - public static final DataComponentType> PATTERNS = register("patterns", + public static final DataComponentType> HEX_HOLDER_PATTERNS = register("patterns", DataComponentType.>builder() .persistent(IotaType.TYPED_CODEC.listOf()) .networkSynchronized(IotaType.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list())) @@ -103,13 +103,13 @@ public static void registerDataComponents(BiConsumer, Resou .networkSynchronized(ByteBufCodecs.DOUBLE) .build()); - public static final DataComponentType SELECTED_PAGE = register("page_idx", + public static final DataComponentType SELECTED_SPELLBOOK_PAGE = register("page_idx", DataComponentType.builder() .persistent(Codec.INT) .networkSynchronized(ByteBufCodecs.INT) .build()); - public static final DataComponentType> PAGES = register("pages", + public static final DataComponentType> SPELLBOOK_PAGES = register("pages", DataComponentType.>builder() .persistent(Codec.unboundedMap(Codec.STRING, IotaType.TYPED_CODEC)) .networkSynchronized(ByteBufCodecs.map( @@ -119,7 +119,7 @@ public static void registerDataComponents(BiConsumer, Resou )) .build()); - public static final DataComponentType> PAGE_NAMES = register("page_names", + public static final DataComponentType> SPELLBOOK_PAGE_NAMES = register("page_names", DataComponentType.>builder() .persistent(Codec.unboundedMap(Codec.STRING, ComponentSerialization.CODEC)) .networkSynchronized(ByteBufCodecs.map( @@ -129,7 +129,7 @@ public static void registerDataComponents(BiConsumer, Resou )) .build()); - public static final DataComponentType> PAGE_SEALS = register("sealed_pages", + public static final DataComponentType> SPELLBOOK_PAGE_SEALS = register("sealed_pages", DataComponentType.>builder() .persistent(Codec.unboundedMap(Codec.STRING, Codec.BOOL)) .networkSynchronized(ByteBufCodecs.map( diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexStateIngredients.java similarity index 96% rename from Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java rename to Common/src/main/java/at/petrak/hexcasting/common/lib/HexStateIngredients.java index 9c7ed400de..ae4b7abde8 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredients.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/lib/HexStateIngredients.java @@ -1,7 +1,7 @@ -package at.petrak.hexcasting.common.recipe.ingredient.state; +package at.petrak.hexcasting.common.lib; import at.petrak.hexcasting.api.HexAPI; -import at.petrak.hexcasting.common.lib.HexRegistries; +import at.petrak.hexcasting.common.recipe.ingredient.state.*; import at.petrak.hexcasting.xplat.IXplatAbstractions; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; @@ -18,7 +18,7 @@ import java.util.Random; import java.util.function.BiConsumer; -public class StateIngredients { +public class HexStateIngredients { public static final Codec TYPED_CODEC = Codec.lazyInitialized(() -> IXplatAbstractions.INSTANCE .getStateIngredientRegistry() .byNameCodec() diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java index 153de7e255..82585e1a51 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AddHexToAncientCypherFunc.java @@ -28,8 +28,8 @@ */ public class AddHexToAncientCypherFunc extends LootItemConditionalFunction { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( - p_344674_ -> commonFields(p_344674_) - .apply(p_344674_, AddHexToAncientCypherFunc::new) + codecInstance -> commonFields(codecInstance) + .apply(codecInstance, AddHexToAncientCypherFunc::new) ); public AddHexToAncientCypherFunc(List lootItemConditions) { @@ -45,8 +45,8 @@ public static ItemStack doStatic(ItemStack stack, RandomSource rand) { stack.set(HexDataComponents.HEX_NAME, hex.getFirst()); stack.set(HexDataComponents.MEDIA, 32 * MediaConstants.SHARD_UNIT); stack.set(HexDataComponents.MEDIA_MAX, 32 * MediaConstants.SHARD_UNIT); - stack.set(HexDataComponents.VARIANT, rand.nextInt(8)); - stack.set(HexDataComponents.PATTERNS, Arrays.stream(hex.getSecond()).map(el -> { + stack.set(HexDataComponents.ITEM_VARIANT, rand.nextInt(8)); + stack.set(HexDataComponents.HEX_HOLDER_PATTERNS, Arrays.stream(hex.getSecond()).map(el -> { var pieces = el.split(" "); return new PatternIota(HexPattern.fromAngles(pieces[1],HexDir.fromString(pieces[0]))); }).collect(Collectors.toList())); diff --git a/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java b/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java index 26c9be0992..5f01830186 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/loot/AmethystReducerFunc.java @@ -15,11 +15,11 @@ public class AmethystReducerFunc extends LootItemConditionalFunction { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec( - p_344674_ -> commonFields(p_344674_) + codecInstance -> commonFields(codecInstance) .and( Codec.DOUBLE.fieldOf("delta").forGetter(AmethystReducerFunc::getDelta) ) - .apply(p_344674_, AmethystReducerFunc::new) + .apply(codecInstance, AmethystReducerFunc::new) ); private final double delta; diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java index bc6ae580a6..a9f8ea3384 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/BrainsweepRecipe.java @@ -1,9 +1,9 @@ package at.petrak.hexcasting.common.recipe; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients; +import at.petrak.hexcasting.common.lib.HexBrainsweepeeIngredients; import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; @@ -83,15 +83,15 @@ public static BlockState copyProperties(BlockState original, BlockState copyTo) public static class Serializer extends RecipeSerializerBase { public static MapCodec CODEC = RecordCodecBuilder.mapCodec(inst -> inst.group( - StateIngredients.TYPED_CODEC.fieldOf("blockIn").forGetter(BrainsweepRecipe::blockIn), - BrainsweepeeIngredients.TYPED_CODEC.fieldOf("entityIn").forGetter(BrainsweepRecipe::entityIn), + HexStateIngredients.TYPED_CODEC.fieldOf("blockIn").forGetter(BrainsweepRecipe::blockIn), + HexBrainsweepeeIngredients.TYPED_CODEC.fieldOf("entityIn").forGetter(BrainsweepRecipe::entityIn), Codec.LONG.fieldOf("cost").forGetter(BrainsweepRecipe::mediaCost), BlockState.CODEC.fieldOf("result").forGetter(BrainsweepRecipe::result) ).apply(inst, BrainsweepRecipe::new) ); public static StreamCodec STREAM_CODEC = StreamCodec.composite( - StateIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::blockIn, - BrainsweepeeIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::entityIn, + HexStateIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::blockIn, + HexBrainsweepeeIngredients.TYPED_STREAM_CODEC, BrainsweepRecipe::entityIn, ByteBufCodecs.VAR_LONG, BrainsweepRecipe::mediaCost, ByteBufCodecs.VAR_INT, (recipe) -> Block.getId(recipe.result), (state, ent, cost, stateId) -> diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java index 91d891f88f..efa2aebee6 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/SealThingsRecipe.java @@ -100,7 +100,7 @@ public String getSerializedName() { public boolean isCorrectSealee(ItemStack stack) { return switch (this) { case FOCUS -> stack.is(HexItems.FOCUS) - && stack.has(HexDataComponents.IOTA) + && stack.has(HexDataComponents.IOTA_HOLDER_IOTA) && !ItemFocus.isSealed(stack); case SPELLBOOK -> stack.is(HexItems.SPELLBOOK) && HexItems.SPELLBOOK.readIota(stack) != null diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java index 841cb7466a..67afb9f655 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTagIngredient.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; +import at.petrak.hexcasting.common.lib.HexBrainsweepeeIngredients; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; @@ -29,7 +30,7 @@ public EntityTagIngredient(TagKey> tag) { @Override public BrainsweepeeIngredientType getType() { - return BrainsweepeeIngredients.TAG; + return HexBrainsweepeeIngredients.TAG; } public TagKey> getTag() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java index 756517b3a1..7eeee4fc32 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/EntityTypeIngredient.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; +import at.petrak.hexcasting.common.lib.HexBrainsweepeeIngredients; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.BuiltInRegistries; @@ -25,7 +26,7 @@ public EntityTypeIngredient(EntityType entityType) { @Override public BrainsweepeeIngredientType getType() { - return BrainsweepeeIngredients.ENTITY_TYPE; + return HexBrainsweepeeIngredients.ENTITY_TYPE; } public EntityType getEntityType() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java index a7f58fc997..422c112ace 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/brainsweep/VillagerIngredient.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.brainsweep; +import at.petrak.hexcasting.common.lib.HexBrainsweepeeIngredients; import com.mojang.serialization.Codec; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; @@ -46,7 +47,7 @@ public VillagerIngredient( @Override public BrainsweepeeIngredientType getType() { - return BrainsweepeeIngredients.VILLAGER; + return HexBrainsweepeeIngredients.VILLAGER; } public @Nullable VillagerProfession getProfession() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java index cfb1209cd5..8eb1ec30b5 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlock.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.state; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.BuiltInRegistries; @@ -25,7 +26,7 @@ public StateIngredientBlock(Block block) { @Override public StateIngredientType getType() { - return StateIngredients.BLOCK_TYPE; + return HexStateIngredients.BLOCK_TYPE; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java index 7a01d09e47..29b43adb91 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlockState.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.state; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.ChatFormatting; @@ -25,7 +26,7 @@ public StateIngredientBlockState(BlockState state) { @Override public StateIngredientType getType() { - return StateIngredients.BLOCK_STATE; + return HexStateIngredients.BLOCK_STATE; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java index 4f828e2f13..bdb0fdf6b7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientBlocks.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.state; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.google.common.collect.ImmutableSet; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; @@ -29,7 +30,7 @@ public StateIngredientBlocks(Collection blocks) { @Override public StateIngredientType getType() { - return StateIngredients.BLOCKS; + return HexStateIngredients.BLOCKS; } @Override diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java index dac2e84b3b..b3afe4995d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTag.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.state; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.google.common.collect.ImmutableSet; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; @@ -32,7 +33,7 @@ public StateIngredientTag(TagKey tag) { @Override public StateIngredientType getType() { - return StateIngredients.TAG; + return HexStateIngredients.TAG; } public Stream resolve() { diff --git a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java index 2a08f605be..06c5f50194 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/recipe/ingredient/state/StateIngredientTagExcluding.java @@ -1,5 +1,6 @@ package at.petrak.hexcasting.common.recipe.ingredient.state; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.core.registries.Registries; @@ -28,7 +29,7 @@ public StateIngredientTagExcluding(TagKey tag, Collection getType() { - return StateIngredients.TAG_EXCLUDING; + return HexStateIngredients.TAG_EXCLUDING; } @Override @@ -97,11 +98,11 @@ public List getExcludes() { public static class Type implements StateIngredientType { public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( TagKey.hashedCodec(Registries.BLOCK).fieldOf("tag").forGetter(StateIngredientTagExcluding::getTag), - StateIngredients.TYPED_CODEC.listOf().fieldOf("excludes").forGetter(StateIngredientTagExcluding::getExcludes) + HexStateIngredients.TYPED_CODEC.listOf().fieldOf("excludes").forGetter(StateIngredientTagExcluding::getExcludes) ).apply(instance, StateIngredientTagExcluding::new)); public static final StreamCodec STREAM_CODEC = StreamCodec.composite( ResourceLocation.STREAM_CODEC.map(id -> TagKey.create(Registries.BLOCK, id), TagKey::location), StateIngredientTagExcluding::getTag, - StateIngredients.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), StateIngredientTagExcluding::getExcludes, + HexStateIngredients.TYPED_STREAM_CODEC.apply(ByteBufCodecs.list()), StateIngredientTagExcluding::getExcludes, StateIngredientTagExcluding::new ); diff --git a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java index 94e1d8ee8b..ca8f5038da 100644 --- a/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java +++ b/Common/src/main/java/at/petrak/hexcasting/datagen/recipe/HexplatRecipes.java @@ -12,13 +12,15 @@ import at.petrak.hexcasting.common.recipe.SealThingsRecipe; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.EntityTypeIngredient; import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.VillagerIngredient; -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients; +import at.petrak.hexcasting.common.lib.HexStateIngredients; import at.petrak.hexcasting.datagen.HexAdvancements; import at.petrak.hexcasting.datagen.IXplatConditionsBuilder; import at.petrak.hexcasting.datagen.IXplatIngredients; import at.petrak.hexcasting.datagen.recipe.builders.BrainsweepRecipeBuilder; import at.petrak.hexcasting.datagen.recipe.builders.CreateCrushingRecipeBuilder; import at.petrak.hexcasting.datagen.recipe.builders.FarmersDelightCuttingRecipeBuilder; +import at.petrak.paucal.api.PaucalAPI; +import at.petrak.paucal.api.datagen.PaucalAdvancementSubProvider; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.advancements.Criterion; import net.minecraft.advancements.critereon.InventoryChangeTrigger; @@ -467,56 +469,57 @@ public void buildRecipes(RecipeOutput recipes) { .requires(HexBlocks.AMETHYST_PILLAR) .unlockedBy("has_item", has(HexBlocks.SLATE)).save(recipes); - new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), + new BrainsweepRecipeBuilder(HexStateIngredients.of(Blocks.AMETHYST_BLOCK), new VillagerIngredient(null, null, 3), Blocks.BUDDING_AMETHYST.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("budding_amethyst")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.TOOLSMITH, null, 2), HexBlocks.IMPETUS_RIGHTCLICK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("impetus_rightclick")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.FLETCHER, null, 2), HexBlocks.IMPETUS_LOOK.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("impetus_look")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.IMPETUS_EMPTY), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.IMPETUS_EMPTY), new VillagerIngredient(VillagerProfession.CLERIC, null, 2), HexBlocks.IMPETUS_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("impetus_storedplayer")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.MASON, null, 1), HexBlocks.DIRECTRIX_REDSTONE.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("directrix_redstone")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.EMPTY_DIRECTRIX), new VillagerIngredient(VillagerProfession.SHEPHERD, null, 1), HexBlocks.DIRECTRIX_BOOLEAN.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("directrix_boolean")); - new BrainsweepRecipeBuilder(StateIngredients.of(HexBlocks.AKASHIC_LIGATURE), + new BrainsweepRecipeBuilder(HexStateIngredients.of(HexBlocks.AKASHIC_LIGATURE), new VillagerIngredient(VillagerProfession.LIBRARIAN, null, 5), HexBlocks.AKASHIC_RECORD.defaultBlockState(), MediaConstants.CRYSTAL_UNIT * 10) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("akashic_record")); // Temporary tests - new BrainsweepRecipeBuilder(StateIngredients.of(Blocks.AMETHYST_BLOCK), + new BrainsweepRecipeBuilder(HexStateIngredients.of(Blocks.AMETHYST_BLOCK), new EntityTypeIngredient(EntityType.ALLAY), HexBlocks.QUENCHED_ALLAY.defaultBlockState(), MediaConstants.CRYSTAL_UNIT) .unlockedBy("enlightenment", new Criterion<>(HexAdvancementTriggers.OVERCAST_TRIGGER, enlightenment)) .save(recipes, modLoc("quench_allay")); - // Create compat + // Create compat; will need to be Neo only as Create 1.21 will not exist on Fabric + /** this.conditions.apply(new CreateCrushingRecipeBuilder() .withInput(Blocks.AMETHYST_CLUSTER) .duration(150) @@ -541,6 +544,7 @@ public void buildRecipes(RecipeOutput recipes) { .withOutput(0.5f, HexItems.AMETHYST_DUST)) .whenModLoaded("create") .save(recipes, modLoc("compat/create/crushing/amethyst_shard")); + */ // FD compat for (var log : EDIFIED_LOGS) { @@ -611,18 +615,19 @@ private > void specialRecipe(RecipeOutput consumer, RecipeSe SpecialRecipeBuilder.special(recipeFunc::apply).save(consumer, HexAPI.MOD_ID + ":dynamic" + name.getPath()); } - protected static Criterion hasItem(ItemLike p_125978_) { - return paucalInventoryTrigger(ItemPredicate.Builder.item().of(p_125978_).build()); + protected static Criterion hasItem(ItemLike itemLike) { + return paucalInventoryTrigger(ItemPredicate.Builder.item().of(itemLike).build()); } - protected static Criterion hasItem(TagKey p_206407_) { - return paucalInventoryTrigger(ItemPredicate.Builder.item().of(p_206407_).build()); + protected static Criterion hasItem(TagKey itemLike) { + return paucalInventoryTrigger(ItemPredicate.Builder.item().of(itemLike).build()); } /** * Prefixed with {@code paucal} to avoid collisions when Forge ATs {@link RecipeProvider#inventoryTrigger}. */ protected static Criterion paucalInventoryTrigger(ItemPredicate... $$0) { + return new Criterion<>( CriteriaTriggers.INVENTORY_CHANGED, new InventoryChangeTrigger.TriggerInstance(Optional.empty(), InventoryChangeTrigger.TriggerInstance.Slots.ANY, List.of($$0)) diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java index 33372c62d8..fb7f2d04a0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java @@ -62,6 +62,7 @@ public int render(InlinePatternData data, GuiGraphics drawContext, int index, St drawContext.pose().pushPose(); drawContext.pose().translate(isGlowy ? -1f : 0, isGlowy ? -1.5f : -0.5f, 0f); int color = trContext.usableColor(); + // Why are patterns rendering either fullbright or too dark on signs, this is bullshit boolean isFlat = InlineRenderer.isFlat(drawContext.pose(), trContext.layerType()); PatternRenderer.renderPattern(data.pattern, drawContext.pose(), !isFlat ? new PatternRenderer.WorldlyBits(drawContext.bufferSource(), LightTexture.FULL_BRIGHT, null) : null, isGlowy ? INLINE_SETTINGS_GLOWY : INLINE_SETTINGS, diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java index ab87c932da..a0209f0208 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IClientXplatAbstractions.java @@ -39,7 +39,11 @@ public interface IClientXplatAbstractions { boolean fabricAdditionalQuenchFrustumCheck(AABB aabb); IClientXplatAbstractions INSTANCE = find(); - + /** + * Returns a block model variant string, either INVENTORY_VARIANT or STANDALONE_VARIANT depending on the mod loader. + * Used for ModelResourceLocations. + * On Fabric, the STANDALONE_VARIANT does not exist, so we grab the INVENTORY_VARIANT instead. + */ String getModelLocVariant(); private static IClientXplatAbstractions find() { diff --git a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java index 14c8e4d3d7..dd38a214b0 100644 --- a/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java +++ b/Common/src/main/java/at/petrak/hexcasting/xplat/IXplatAbstractions.java @@ -127,7 +127,8 @@ public interface IXplatAbstractions { @Nullable ADHexHolder findHexHolder(ItemStack stack); - + + @Nullable ADVariantItem findVariantHolder(ItemStack stack); // coooollooorrrs diff --git a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json index 68df59159b..5a01a51556 100644 --- a/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json +++ b/Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps.json @@ -83,11 +83,6 @@ "title": "hexcasting.page.mishaps.true_name.title", "text": "hexcasting.page.mishaps.true_name" }, - { - "type": "patchouli:text", - "title": "hexcasting.page.mishaps.entity_not_found.title", - "text": "hexcasting.page.mishaps.entity_not_found" - }, { "type": "patchouli:text", "title": "hexcasting.page.mishaps.disabled.title", diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt index a2e152e6aa..725431a9ce 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/FabricHexInitializer.kt @@ -31,8 +31,8 @@ import at.petrak.hexcasting.common.misc.BrainsweepingEvents import at.petrak.hexcasting.common.misc.PlayerPositionRecorder import at.petrak.hexcasting.common.misc.RegisterMisc import at.petrak.hexcasting.common.recipe.HexRecipeStuffRegistry -import at.petrak.hexcasting.common.recipe.ingredient.brainsweep.BrainsweepeeIngredients -import at.petrak.hexcasting.common.recipe.ingredient.state.StateIngredients +import at.petrak.hexcasting.common.lib.HexBrainsweepeeIngredients +import at.petrak.hexcasting.common.lib.HexStateIngredients import at.petrak.hexcasting.fabric.cc.HexCardinalComponents import at.petrak.hexcasting.fabric.cc.adimpl.* import at.petrak.hexcasting.fabric.event.VillagerConversionCallback @@ -224,8 +224,8 @@ object FabricHexInitializer : ModInitializer { HexArithmetics.register(bind(IXplatAbstractions.INSTANCE.arithmeticRegistry)) HexContinuationTypes.registerContinuations(bind(IXplatAbstractions.INSTANCE.continuationTypeRegistry)) HexEvalSounds.register(bind(IXplatAbstractions.INSTANCE.evalSoundRegistry)) - StateIngredients.register(bind(IXplatAbstractions.INSTANCE.stateIngredientRegistry)) - BrainsweepeeIngredients.register(bind(IXplatAbstractions.INSTANCE.brainsweepeeIngredientRegistry)) + HexStateIngredients.register(bind(IXplatAbstractions.INSTANCE.stateIngredientRegistry)) + HexBrainsweepeeIngredients.register(bind(IXplatAbstractions.INSTANCE.brainsweepeeIngredientRegistry)) // Because of Java's lazy-loading of classes, can't use Kotlin static initialization for diff --git a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java index 34d588bcf3..fb6b767a5d 100644 --- a/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java +++ b/Fabric/src/main/java/at/petrak/hexcasting/fabric/cc/HexCardinalComponents.java @@ -92,15 +92,15 @@ public void registerEntityComponentFactories(EntityComponentFactoryRegistry regi public void registerItemComponentMigrations(ItemComponentMigrationRegistry registry) { registry.registerMigration(modLoc("pigment"), HexDataComponents.PIGMENT); - registry.registerMigration(modLoc("iota_holder"), HexDataComponents.IOTA); + registry.registerMigration(modLoc("iota_holder"), HexDataComponents.IOTA_HOLDER_IOTA); // oh havoc, you think you're so funny // the worst part is you're /right/ registry.registerMigration(modLoc("media_holder"), HexDataComponents.MEDIA); - registry.registerMigration(modLoc("hex_holder"), HexDataComponents.PATTERNS); + registry.registerMigration(modLoc("hex_holder"), HexDataComponents.HEX_HOLDER_PATTERNS); - registry.registerMigration(modLoc("variant_item"), HexDataComponents.VARIANT); + registry.registerMigration(modLoc("variant_item"), HexDataComponents.ITEM_VARIANT); } private ComponentFactory wrapItemEntityDelegate(Function Date: Sun, 8 Mar 2026 03:42:04 -0500 Subject: [PATCH 42/51] Fixed patterns rendering too dark on signs, attempted to fix patterns rendering too dark on slates... again --- .../hexcasting/client/render/HexAdditionalRenderers.java | 8 +++----- .../petrak/hexcasting/client/render/PatternRenderer.java | 4 +++- .../client/render/WorldlyPatternRenderHelpers.java | 4 ++-- .../hexcasting/interop/inline/InlinePatternRenderer.java | 8 +++++++- 4 files changed, 15 insertions(+), 9 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java index c2c0c4e098..405189c17a 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/HexAdditionalRenderers.java @@ -9,10 +9,7 @@ import com.google.common.collect.Lists; 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.Tesselator; -import com.mojang.blaze3d.vertex.VertexFormat; +import com.mojang.blaze3d.vertex.*; import com.mojang.datafixers.util.Pair; import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; @@ -124,10 +121,11 @@ private static void renderSentinel(Sentinel sentinel, LocalPlayer owner, v.accept(bottom, Icos.TOP_RING[(i + 3) % 5]); } //tess.end(); - + BufferUploader.drawWithShader(buf.buildOrThrow()); RenderSystem.enableDepthTest(); RenderSystem.enableCull(); ps.popPose(); + } private static class Icos { diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java index 8fd307a9a4..34f6bdbf6f 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java @@ -67,13 +67,15 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null List zappyRenderSpace = staticPoints.scaleVecs(zappyPattern); + var isGlowyInline = patSets.getName().equals("inlineglowy"); + if(FastColor.ARGB32.alpha(patColors.outerEndColor()) != 0 && FastColor.ARGB32.alpha(patColors.outerStartColor()) != 0){ RenderLib.drawLineSeq(ps.last().pose(), zappyRenderSpace, (float)patSets.getOuterWidth(staticPoints.finalScale), patColors.outerStartColor(), patColors.outerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,outerZ)); } if(FastColor.ARGB32.alpha(patColors.innerEndColor()) != 0 && FastColor.ARGB32.alpha(patColors.innerStartColor()) != 0) { RenderLib.drawLineSeq(ps.last().pose(), zappyRenderSpace, (float)patSets.getInnerWidth(staticPoints.finalScale), - patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,innerZ)); + patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,isGlowyInline ? 1f : innerZ)); } } diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index 7a7a5d212c..f89cf51d6e 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -73,7 +73,7 @@ public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern patte ps.pushPose(); - Vec3 normal = null; + Vec3 normal; if(isOnWall){ ps.mulPose(Axis.ZP.rotationDegrees(180)); Vec3i tV = SLATE_FACINGS[facing % 4]; @@ -97,7 +97,7 @@ public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern patte renderPattern(pattern, wombly ? WORLDLY_SETTINGS_WOBBLY : WORLDLY_SETTINGS, wombly ? PatternColors.SLATE_WOBBLY_PURPLE_COLOR : PatternColors.DEFAULT_PATTERN_COLOR, - tile.getBlockPos().hashCode(), ps, buffer, normal, null, actualLight, 1); + tile.getBlockPos().hashCode(), ps, buffer, normal, null, light, 1); ps.popPose(); } diff --git a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java index fb7f2d04a0..da494236e7 100644 --- a/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/interop/inline/InlinePatternRenderer.java @@ -8,6 +8,10 @@ import net.minecraft.client.renderer.LightTexture; import net.minecraft.network.chat.Style; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.phys.Vec3; +import org.joml.Matrix3f; + +import java.util.Random; public class InlinePatternRenderer implements InlineRenderer { @@ -64,7 +68,9 @@ public int render(InlinePatternData data, GuiGraphics drawContext, int index, St int color = trContext.usableColor(); // Why are patterns rendering either fullbright or too dark on signs, this is bullshit boolean isFlat = InlineRenderer.isFlat(drawContext.pose(), trContext.layerType()); - PatternRenderer.renderPattern(data.pattern, drawContext.pose(), !isFlat ? new PatternRenderer.WorldlyBits(drawContext.bufferSource(), LightTexture.FULL_BRIGHT, null) : null, + + Matrix3f normalMatrix = drawContext.pose().last().normal(); + PatternRenderer.renderPattern(data.pattern, drawContext.pose(), isFlat ? null : new PatternRenderer.WorldlyBits(drawContext.bufferSource(), trContext.light(), new Vec3(0, 0, 1)), isGlowy ? INLINE_SETTINGS_GLOWY : INLINE_SETTINGS, isGlowy ? new PatternColors(color, 0xFF_000000 | glowyParentColor) : PatternColors.singleStroke(color), 0, INLINE_TEXTURE_RES); From 277a475a339f0282691dc6b2e03e0f637fd4a15e Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Sat, 28 Mar 2026 02:03:03 -0500 Subject: [PATCH 43/51] chore: remove obsolete ExecutionClientView comment --- .../petrak/hexcasting/api/casting/eval/ExecutionClientView.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt index 90e7285b37..8c51579153 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/ExecutionClientView.kt @@ -16,8 +16,6 @@ data class ExecutionClientView( val isStackClear: Boolean, val resolutionType: ResolvedPatternType, - // These must be tags so the wrapping of the text can happen on the client - // otherwise we don't know when to stop rendering val stackDescs: List, val ravenmind: CompoundTag? ) { From 77e614efa1563131114a76f0a7fa256e30f11d31 Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Sat, 28 Mar 2026 16:56:21 -0500 Subject: [PATCH 44/51] chore: remove obsolete CastingImmage variables --- .../at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt index ea496e43ff..8e54e9ffff 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt @@ -3,13 +3,11 @@ package at.petrak.hexcasting.api.casting.eval.vm import at.petrak.hexcasting.api.HexAPI import at.petrak.hexcasting.api.casting.iota.Iota import at.petrak.hexcasting.api.casting.iota.IotaType -import at.petrak.hexcasting.api.utils.getCompound import at.petrak.hexcasting.api.utils.getOrCreateCompound import at.petrak.hexcasting.api.utils.putCompound import com.mojang.serialization.Codec import com.mojang.serialization.codecs.RecordCodecBuilder import net.minecraft.nbt.CompoundTag -import net.minecraft.nbt.Tag import net.minecraft.network.codec.ByteBufCodecs import net.minecraft.network.codec.StreamCodec import net.minecraft.world.entity.Entity @@ -42,9 +40,6 @@ data class CastingImage( ByteBufCodecs.BOOL, ParenthesizedIota::escaped, ::ParenthesizedIota ) - - const val TAG_IOTAS = "iotas" - const val TAG_ESCAPED = "escaped" } } From afbf79f962d1dfdf7cfbd210b2743d72ca421db3 Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Mon, 30 Mar 2026 19:19:34 -0500 Subject: [PATCH 45/51] fix(rendering): restore worldly pattern rendering behavior from 1.20 --- .../hexcasting/client/render/PatternRenderer.java | 4 +++- .../client/render/WorldlyPatternRenderHelpers.java | 11 +---------- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java index 34f6bdbf6f..b952a70f3c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java @@ -100,7 +100,9 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null } private static final float outerZ = 0.0005f; - private static final float innerZ = 0.001f; + + // Since the Z-flip is no longer needed as normals are fine in 1.21, this variable needs to be negative instead + private static final float innerZ = -0.001f; private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStack ps, @Nullable WorldlyBits worldlyBits, PatternSettings patSets, PatternColors patColors, double seed, int resPerUnit){ Optional> maybeTextures = PatternTextureManager.getTextures(patternlike, patSets, seed, resPerUnit); diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java index f89cf51d6e..ab9b258794 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/WorldlyPatternRenderHelpers.java @@ -10,7 +10,6 @@ import com.mojang.math.Axis; import net.minecraft.client.renderer.LevelRenderer; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.core.Direction; import net.minecraft.core.Vec3i; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.properties.AttachFace; @@ -73,7 +72,7 @@ public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern patte ps.pushPose(); - Vec3 normal; + Vec3 normal = null; if(isOnWall){ ps.mulPose(Axis.ZP.rotationDegrees(180)); Vec3i tV = SLATE_FACINGS[facing % 4]; @@ -90,10 +89,7 @@ public static void renderPatternForSlate(BlockEntitySlate tile, HexPattern patte // Set the normal for floor/ceiling slates so lighting is correct // Floor faces up, ceiling faces down - normal = isOnCeiling ? new Vec3(0, -1, 0) : new Vec3(0, 1, 0); } - - int actualLight = LevelRenderer.getLightColor(tile.getLevel(), tile.getBlockPos().relative(Direction.getNearest(normal))); renderPattern(pattern, wombly ? WORLDLY_SETTINGS_WOBBLY : WORLDLY_SETTINGS, wombly ? PatternColors.SLATE_WOBBLY_PURPLE_COLOR : PatternColors.DEFAULT_PATTERN_COLOR, @@ -140,11 +136,6 @@ public static void renderPattern(HexPattern pattern, PatternSettings patSets, Pa ps.translate(0,0, z); ps.scale(blockSize, blockSize, 1); - - PoseStack noNormalInv = new PoseStack(); - noNormalInv.scale(1, 1, -1); - ps.mulPose(noNormalInv.last().pose()); - PatternRenderer.renderPattern(pattern, ps, new PatternRenderer.WorldlyBits(bufSource, light, normal), patSets, patColors, seed, blockSize * 512); From 20c9e7f9188f3193cd8902efcf8f06ddf70d65fa Mon Sep 17 00:00:00 2001 From: SuperKnux <34802236+SuperKnux@users.noreply.github.com> Date: Tue, 31 Mar 2026 17:10:37 -0500 Subject: [PATCH 46/51] chore: changed push branch to 'indev/1.21.1' in PR workflow Updated the push branch in the PR workflow from 'main' to 'indev/1.21.1'. --- .github/workflows/pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index eb65102066..7223ce2329 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -9,7 +9,7 @@ on: workflow_dispatch: # trigger on pushes to the default branch (main) to keep the cache up to date push: - branches: main + branches: indev/1.21.1 env: JAVA_VERSION: '21.0.5' From 60db25ddb6ed2df3628d6e87bd213041808c37a1 Mon Sep 17 00:00:00 2001 From: SuperKnux <34802236+SuperKnux@users.noreply.github.com> Date: Sun, 26 Apr 2026 17:42:11 -0500 Subject: [PATCH 47/51] fix(workflow): change dependencies for pr workflow Updated dependencies and modloader configurations for neoforge. --- .github/workflows/pr.yml | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 7223ce2329..60499ae1f6 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -54,30 +54,30 @@ jobs: - client modloader: - fabric - - forge + - neoforge include: - modloader: fabric mc-runtime-test: fabric - fabric-api: 0.87.0 + fabric-api: 0.14.21 dependencies: >- - 'https://cdn.modrinth.com/data/Ha28R6CL/versions/vlhvI5Li/fabric-language-kotlin-1.10.18%2Bkotlin.1.9.22.jar' - 'https://cdn.modrinth.com/data/9s6osm5g/versions/s7VTKfLA/cloth-config-11.1.106-fabric.jar' - 'https://cdn.modrinth.com/data/TZo2wHFe/versions/dabyDTwJ/paucal-0.6.0%2B1.20.1-fabric.jar' - 'https://cdn.modrinth.com/data/fin1PX4m/versions/fBoxabC2/inline-fabric-1.20.1-1.0.1.jar' - 'https://cdn.modrinth.com/data/K01OU20C/versions/HykM2Qyv/cardinal-components-api-5.2.1.jar' - 'https://cdn.modrinth.com/data/nU0bVIaL/versions/Y6tuH1cn/Patchouli-1.20.1-84-FABRIC.jar' - 'https://cdn.modrinth.com/data/mOgUt4GM/versions/zv46i3PW/modmenu-7.1.0.jar' - 'https://cdn.modrinth.com/data/5aaWibi9/versions/z8ProfKL/trinkets-3.7.0.jar' - - modloader: forge - mc-runtime-test: lexforge + 'https://cdn.modrinth.com/data/Ha28R6CL/versions/vlhvI5Li/fabric-language-kotlin-1.12.3%2Bkotlin.2.0.21.jar' + 'https://cdn.modrinth.com/data/9s6osm5g/versions/HpMb5wGb/cloth-config-15.0.140-fabric.jar' + 'https://ci.blamejared.com/job/petrakat/job/PAUCAL/job/1.21/26/artifact/Fabric/build/libs/paucal-0.7.1-pre-26+1.21.1-fabric.jar' + 'https://cdn.modrinth.com/data/fin1PX4m/versions/SBDJBD0a/inline-fabric-1.21.1-1.2.2.jar' + 'https://cdn.modrinth.com/data/K01OU20C/versions/nLsCe2VD/cardinal-components-api-6.1.3.jar' + 'https://cdn.modrinth.com/data/nU0bVIaL/versions/XIjNwQkI/Patchouli-1.21.1-93-FABRIC.jar' + 'https://cdn.modrinth.com/data/mOgUt4GM/versions/v6Xx3fbU/modmenu-11.0.4.jar' + 'https://cdn.modrinth.com/data/jtmvUHXj/versions/Xlt4eWBe/accessories-fabric-1.1.0-beta.53%2B1.21.1.jar' + - modloader: neoforge + mc-runtime-test: neoforge fabric-api: none dependencies: >- - 'https://cdn.modrinth.com/data/ordsPcFz/versions/9j6YaPp2/kotlinforforge-4.10.0-all.jar' - 'https://cdn.modrinth.com/data/9s6osm5g/versions/JoLgnJ0G/cloth-config-11.1.106-forge.jar' - 'https://cdn.modrinth.com/data/TZo2wHFe/versions/HyBiJPtT/paucal-0.6.0%2B1.20.1-forge.jar' - 'https://cdn.modrinth.com/data/fin1PX4m/versions/huiPd6Lc/inline-forge-1.20.1-1.0.1.jar' - 'https://cdn.modrinth.com/data/40FYwb4z/versions/fs9CeXYZ/caelus-forge-3.1.0%2B1.20.jar' - 'https://cdn.modrinth.com/data/nU0bVIaL/versions/JMtc0mTS/Patchouli-1.20.1-84-FORGE.jar' + 'https://cdn.modrinth.com/data/ordsPcFz/versions/NrSebcsG/kotlinforforge-5.11.0-all.jar' + 'https://cdn.modrinth.com/data/9s6osm5g/versions/izKINKFg/cloth-config-15.0.140-neoforge.jar' + 'https://ci.blamejared.com/job/petrakat/job/PAUCAL/job/1.21/26/artifact/Neoforge/build/libs/paucal-0.7.1-pre-26+1.21.1-neoforge.jar' + 'https://cdn.modrinth.com/data/fin1PX4m/versions/FhE1RJsR/inline-neoforge-1.21.1-1.2.2.jar' + 'https://cdn.modrinth.com/data/jtmvUHXj/versions/Fb55Fgjz/accessories-neoforge-1.1.0-beta.53%2B1.21.1.jar' + 'https://cdn.modrinth.com/data/nU0bVIaL/versions/BIogJv2D/Patchouli-1.21.1-93-NEOFORGE.jar' runs-on: ubuntu-latest steps: - uses: actions/setup-java@v4 From 049bbfd615b8e8aeed5f0fe6890f67c7239d66ec Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Mon, 27 Apr 2026 08:06:12 -0500 Subject: [PATCH 48/51] fix(rendering): fix pattern inner lines disappearing on uis --- .../petrak/hexcasting/client/render/PatternRenderer.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java index b952a70f3c..8011a74600 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java @@ -75,7 +75,7 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null } if(FastColor.ARGB32.alpha(patColors.innerEndColor()) != 0 && FastColor.ARGB32.alpha(patColors.innerStartColor()) != 0) { RenderLib.drawLineSeq(ps.last().pose(), zappyRenderSpace, (float)patSets.getInnerWidth(staticPoints.finalScale), - patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,isGlowyInline ? 1f : innerZ)); + patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,isGlowyInline ? 1f : (worldlyBits != null ? innerZ : reversedInnerZ))); } } @@ -102,9 +102,12 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null private static final float outerZ = 0.0005f; // Since the Z-flip is no longer needed as normals are fine in 1.21, this variable needs to be negative instead - private static final float innerZ = -0.001f; + private static float innerZ = -0.001f; + + private static final float reversedInnerZ = 0.01f; private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStack ps, @Nullable WorldlyBits worldlyBits, PatternSettings patSets, PatternColors patColors, double seed, int resPerUnit){ + Optional> maybeTextures = PatternTextureManager.getTextures(patternlike, patSets, seed, resPerUnit); if(maybeTextures.isEmpty()){ return false; @@ -130,7 +133,7 @@ private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStac } if(FastColor.ARGB32.alpha(patColors.innerStartColor()) != 0) { - VCDrawHelper vcHelper = VCDrawHelper.getHelper(worldlyBits, ps, innerZ, textures.get("inner")); + VCDrawHelper vcHelper = VCDrawHelper.getHelper(worldlyBits, ps, worldlyBits != null ? innerZ : reversedInnerZ, textures.get("inner")); vc = vcHelper.vcSetupAndSupply(VertexFormat.Mode.QUADS); int cl = patColors.innerStartColor(); From 0758cfbd6b661755f38dff2f4d1479deda878063 Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Mon, 27 Apr 2026 08:07:38 -0500 Subject: [PATCH 49/51] fix(casting): fix ravenmind optional never being null --- .../petrak/hexcasting/api/casting/eval/vm/CastingImage.kt | 6 +++++- .../java/at/petrak/hexcasting/common/items/ItemStaff.java | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt index 8e54e9ffff..86d03f299c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt +++ b/Common/src/main/java/at/petrak/hexcasting/api/casting/eval/vm/CastingImage.kt @@ -67,7 +67,11 @@ data class CastingImage( * Returns this image's ravenmind in an Optional wrapper. */ fun ravenmind() : Optional { - return Optional.ofNullable(userData.getCompound(HexAPI.RAVENMIND_USERDATA)) + val tag = userData.getCompound(HexAPI.RAVENMIND_USERDATA) + + var result: CompoundTag? = null + if (!tag.isEmpty) { result = tag } + return Optional.ofNullable(result) } diff --git a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java index c787ceec74..6007be386d 100644 --- a/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java +++ b/Common/src/main/java/at/petrak/hexcasting/common/items/ItemStaff.java @@ -17,6 +17,8 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; +import javax.annotation.Nullable; + public class ItemStaff extends Item { // 0 = normal. 1 = old. 2 = cherry preview public static final ResourceLocation FUNNY_LEVEL_PREDICATE = ResourceLocation.fromNamespaceAndPath(HexAPI.MOD_ID, "funny_level"); @@ -45,7 +47,7 @@ public InteractionResultHolder use(Level world, Player player, Intera var vm = IXplatAbstractions.INSTANCE.getStaffcastVM(serverPlayer, hand); var patterns = IXplatAbstractions.INSTANCE.getPatternsSavedInUi(serverPlayer); - CompoundTag ravenmind = vm.getImage().ravenmind().orElse(new CompoundTag()); + @Nullable CompoundTag ravenmind = vm.getImage().ravenmind().orElse(null); IXplatAbstractions.INSTANCE.sendPacketToPlayer(serverPlayer, From 32a44376a44e7f97ba3b57ed9db78b996c525707 Mon Sep 17 00:00:00 2001 From: SuperKnux Date: Sun, 10 May 2026 16:14:52 -0500 Subject: [PATCH 50/51] chore: remove unneeded jankson dep on Fabric; temporary flatdir PAUCAL jars fix(rendering): replace pattern rendering depth with VCDrawHelper depth reversal --- Common/build.gradle | 2 +- .../client/render/PatternRenderer.java | 8 +++----- .../hexcasting/client/render/VCDrawHelper.kt | 2 +- Fabric/build.gradle | 6 +----- Neoforge/build.gradle | 2 +- build.gradle | 11 +++++++++++ gradle.properties | 2 +- libs/paucal-0.7.1-noelle+1.21.1-common.jar | Bin 0 -> 257721 bytes libs/paucal-0.7.1-noelle+1.21.1-fabric.jar | Bin 0 -> 261001 bytes libs/paucal-0.7.1-noelle+1.21.1-neoforge.jar | Bin 0 -> 268315 bytes 10 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 libs/paucal-0.7.1-noelle+1.21.1-common.jar create mode 100644 libs/paucal-0.7.1-noelle+1.21.1-fabric.jar create mode 100644 libs/paucal-0.7.1-noelle+1.21.1-neoforge.jar diff --git a/Common/build.gradle b/Common/build.gradle index 02923f17b5..1f2de764ed 100644 --- a/Common/build.gradle +++ b/Common/build.gradle @@ -37,7 +37,7 @@ dependencies { // Do NOT use other classes from Fabric Loader. modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" - modCompileOnly "at.petra-k:paucal:$paucalVersion+$minecraftVersion-common" + modCompileOnly "libs:paucal:$paucalVersion+$minecraftVersion-common" // i do not know why the xplat and mod jars are in different coordinates modCompileOnly "vazkii.patchouli:Patchouli-xplat:1.21-$patchouliVersion-SNAPSHOT" modCompileOnly "com.samsthenerd.inline:inline-common:1.21.1-1.2.2-74" diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java index 8011a74600..bcb7f2ed09 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java @@ -75,7 +75,7 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null } if(FastColor.ARGB32.alpha(patColors.innerEndColor()) != 0 && FastColor.ARGB32.alpha(patColors.innerStartColor()) != 0) { RenderLib.drawLineSeq(ps.last().pose(), zappyRenderSpace, (float)patSets.getInnerWidth(staticPoints.finalScale), - patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,isGlowyInline ? 1f : (worldlyBits != null ? innerZ : reversedInnerZ))); + patColors.innerStartColor(), patColors.innerEndColor(), VCDrawHelper.getHelper(worldlyBits, ps,isGlowyInline ? 1f : innerZ)); } } @@ -102,9 +102,7 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null private static final float outerZ = 0.0005f; // Since the Z-flip is no longer needed as normals are fine in 1.21, this variable needs to be negative instead - private static float innerZ = -0.001f; - - private static final float reversedInnerZ = 0.01f; + private static float innerZ = 0.001f; private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStack ps, @Nullable WorldlyBits worldlyBits, PatternSettings patSets, PatternColors patColors, double seed, int resPerUnit){ @@ -133,7 +131,7 @@ private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStac } if(FastColor.ARGB32.alpha(patColors.innerStartColor()) != 0) { - VCDrawHelper vcHelper = VCDrawHelper.getHelper(worldlyBits, ps, worldlyBits != null ? innerZ : reversedInnerZ, textures.get("inner")); + VCDrawHelper vcHelper = VCDrawHelper.getHelper(worldlyBits, ps, innerZ, textures.get("inner")); vc = vcHelper.vcSetupAndSupply(VertexFormat.Mode.QUADS); int cl = patColors.innerStartColor(); diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt b/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt index 5fa673b252..8fe438728c 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/VCDrawHelper.kt @@ -35,7 +35,7 @@ interface VCDrawHelper { @JvmStatic fun getHelper(worldlyBits: WorldlyBits?, ps: PoseStack, z: Float, texture: ResourceLocation) : VCDrawHelper { if(worldlyBits != null){ - return Worldly(worldlyBits, ps, z, texture) + return Worldly(worldlyBits, ps, z * -1, texture) } return Basic(z, texture) } diff --git a/Fabric/build.gradle b/Fabric/build.gradle index f9aedd8d24..b688e9fd7d 100644 --- a/Fabric/build.gradle +++ b/Fabric/build.gradle @@ -128,7 +128,7 @@ dependencies { shadowBundle project(path: ':Common', configuration: 'transformProductionFabric') // === MANDATORY DEPS === - modCompileOnly("at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric") + modImplementation("libs:paucal:$paucalVersion+$minecraftVersion-fabric") // dear mod devs, don't put the platform in the middle of your version code modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-FABRIC-SNAPSHOT" modImplementation "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" @@ -152,10 +152,6 @@ dependencies { modLocalRuntime "dev.architectury:architectury-fabric:$architecturyVersion" modLocalRuntime "com.samsthenerd.inline:inline-fabric:$minecraftVersion-$inlineVersion" - modLocalRuntime "at.petra-k:paucal:$paucalVersion+$minecraftVersion-fabric" - // fuck you jankson fuck you jankson fuck you jankson (jankson loves to crash Fabric:runClient with a NoSuchMethodException for no reason and then act like nothing happened) - localRuntime "blue.endless:jankson:1.2.3" - // modImplementation "maven.modrinth:gravity-api:$gravityApiVersion" modApi("com.github.Virtuoel:Pehkui:${pehkuiVersion}", { diff --git a/Neoforge/build.gradle b/Neoforge/build.gradle index 9f0b390b0b..9403d9e761 100644 --- a/Neoforge/build.gradle +++ b/Neoforge/build.gradle @@ -99,7 +99,7 @@ dependencies { compileOnly("top.theillusivec4.curios:curios-neoforge:$curiosVersion+$minecraftVersion:api") runtimeOnly("top.theillusivec4.curios:curios-neoforge:$curiosVersion+$minecraftVersion") - modImplementation "at.petra-k:paucal:$paucalVersion+$minecraftVersion-neoforge" + modImplementation "libs:paucal:$paucalVersion+$minecraftVersion-neoforge" modImplementation "vazkii.patchouli:Patchouli:1.21-$patchouliVersion-NEOFORGE-SNAPSHOT" modImplementation "com.illusivesoulworks.caelus:caelus-neoforge:$caelusVersion" modImplementation "com.samsthenerd.inline:inline-neoforge:1.21.1-1.2.2-74" diff --git a/build.gradle b/build.gradle index 861df6d871..a95e196376 100644 --- a/build.gradle +++ b/build.gradle @@ -116,6 +116,17 @@ subprojects { tasks.withType(GenerateModuleMetadata).configureEach { enabled = false } + + repositories { + exclusiveContent { + filter { + includeGroup("libs") + } + forRepository { + flatDir { dir(rootProject.file("libs")) } + } + } + } } allprojects { diff --git a/gradle.properties b/gradle.properties index cce69bc225..2d20178f0d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,7 +16,7 @@ fabric_loader_version=0.16.14 # this is the version published to modrinth/cf i swear # haha not anymore it's from mavenLocal -paucalVersion=0.7.1-pre-25 +paucalVersion=0.7.1-noelle patchouliVersion=88 accessoriesVersion=1.1.0-beta.16+1.21.1 diff --git a/libs/paucal-0.7.1-noelle+1.21.1-common.jar b/libs/paucal-0.7.1-noelle+1.21.1-common.jar new file mode 100644 index 0000000000000000000000000000000000000000..064db7c967d54071597b683acc89b42a8b70e850 GIT binary patch literal 257721 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

!L^a%}| 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%0DhnjX1Mw+IzI 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 XrUqnSdlm-s27kn)U@(918VvS-BP&Ck literal 0 HcmV?d00001 diff --git a/libs/paucal-0.7.1-noelle+1.21.1-fabric.jar b/libs/paucal-0.7.1-noelle+1.21.1-fabric.jar new file mode 100644 index 0000000000000000000000000000000000000000..12da30ae149d496cf5393b40357b6af9be6ac088 GIT binary patch literal 261001 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

3#F}WRm89zj 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 z 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

qlT_}jrvF9gIITwuQnO^6wpEaUL- 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�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 RFf;&RHL$_g^$eK!7yt*2Moj Date: Tue, 12 May 2026 11:02:28 -0500 Subject: [PATCH 51/51] chore: remove innerZ comment --- .../java/at/petrak/hexcasting/client/render/PatternRenderer.java | 1 - 1 file changed, 1 deletion(-) diff --git a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java index bcb7f2ed09..6721baa8c4 100644 --- a/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java +++ b/Common/src/main/java/at/petrak/hexcasting/client/render/PatternRenderer.java @@ -101,7 +101,6 @@ public static void renderPattern(HexPatternLike patternlike, PoseStack ps, @Null private static final float outerZ = 0.0005f; - // Since the Z-flip is no longer needed as normals are fine in 1.21, this variable needs to be negative instead private static float innerZ = 0.001f; private static boolean renderPatternTexture(HexPatternLike patternlike, PoseStack ps, @Nullable WorldlyBits worldlyBits, PatternSettings patSets, PatternColors patColors, double seed, int resPerUnit){